Alan Modra [Tue, 15 Jun 2010 07:33:43 +0000 (17:03 +0930)]
invoke.texi: Add mcmodel to powerpc options.
* doc/invoke.texi: Add mcmodel to powerpc options.
* configure.ac: Add HAVE_LD_LARGE_TOC test.
* configure: Regenerate.
* config.in: Regenerate.
* config/rs6000/linux64.opt (mcmodel): New.
* config/rs6000/linux64.h (TARGET_USES_LINUX64_OPT): Define.
(TARGET_CMODEL): Define.
(SUBSUBTARGET_OVERRIDE_OPTIONS): Check user -mcmodel choice,
select CMODEL_MEDIUM default.
* config/rs6000/rs6000.h (enum rs6000_cmodel): New.
(TARGET_CMODEL): Define default.
* config/rs6000/rs6000.c (cmodel): New variable.
(rs6000_explicit_options): Add cmodel field.
(rs6000_handle_option): Handle -mcmodel.
(create_TOC_reference): Add largetoc_reg param. Generate high,
lo_sum rtl for CMODEL_MEDIUM and CMODEL_LARGE. Update all callers.
(rs6000_delegitimize_address): Recognise new toc reference rtl
and minimal-toc rtl.
(rs6000_legitimize_reload_address): Handle new toc references.
(print_operand_address): Handle legitimate_constant_pool_address_p
match before lo_sum.
(rs6000_eliminate_indexed_memrefs): Tidy.
(rs6000_emit_move): Tweak threshold for inlining constants.
Keep rs6000_emit_allocate_stack large stack frame offsets
loaded into r0 inline.
(rs6000_generate_compare <cmptf_internal2>): One more clobber.
(tocrel_base, tocrel_offset): New variables.
(toc_relative_expr_p): Set them here.
(print_operand_address): Skip over any offset on constant pool
address.
(rs6000_output_addr_const_extra): Print tocrel_offset before @toc.
(rs6000_mode_dependent_address <LO_SUM>): False for new toc refs.
(offsettable_ok_by_alignment): New function.
(rs6000_emit_move): Address suitably aligned local symbol_refs
relative to the toc pointer for -mcmodel=medium.
(legitimate_constant_pool_address_p): Make param const_rtx. Add
strict param. Allow lo_sum version of addressing. Verify reg
used for -mminimal-toc and -mcmodel != small. Update all callers.
* config/rs6000/constraints.md: Update for above change.
* config/rs6000/predicates.md: Likewise.
* config/rs6000/rs6000.md (tls_gd_aix): Generate -mcmodel=medium/large
code.
(tls_gd): Split for -mcmodel=medium/large.
(tls_gd_high, tls_gd_low): New.
(tls_ld_aix, tls_ld, tls_ld_high, tls_ld_low): Similarly.
(tls_got_dtprel, tls_got_dtprel_high, tls_got_dtprel_low): Similarly.
(tls_got_tprel, tls_got_tprel_high, tls_got_tprel_low): Similarly.
(largetoc_high, largetoc_low): New.
(cmptf_internal2): Add clobber.
* config/rs6000/rs6000-protos.h: Update.
From-SVN: r160773
GCC Administrator [Tue, 15 Jun 2010 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160770
Changpeng Fang [Mon, 14 Jun 2010 20:51:26 +0000 (20:51 +0000)]
Account prefetch_mod and unroll_factor for the computation of the prefetch count.
2010-06-14 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (nothing_to_prefetch_p): New. Return
true if no prefetch is going to be generated for a given group.
(estimate_prefetch_count): Use prefetch_mod and unroll_factor to
estimate the prefetch_count.
(loop_prefetch_arrays): Call nothing_to_prefetch_p; estimate the
prefetch count by considering the unroll_factor and prefetch_mod
for is_loop_prefetching_profitable.
From-SVN: r160766
Andreas Schwab [Mon, 14 Jun 2010 20:00:21 +0000 (20:00 +0000)]
m68k.c (m68k_delegitimize_address): Don't do anything if the argument is not a MEM.
* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
anything if the argument is not a MEM.
From-SVN: r160763
Alexandre Oliva [Mon, 14 Jun 2010 19:18:18 +0000 (19:18 +0000)]
re PR debug/43650 ("-fcompare-debug failure" with "-O2 -fpeel-loops -fgraphite-identity")
PR debug/43650
PR debug/44181
PR debug/44247
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Skip
debug stmts.
(canonicalize_loop_ivs): Likewise.
From-SVN: r160762
Alexandre Oliva [Mon, 14 Jun 2010 19:18:04 +0000 (19:18 +0000)]
re PR debug/43656 ("-fcompare-debug failure" with "-O2 -fschedule-insns -fsched-pressure -funroll-loops -fgraphite-identity")
PR debug/43656
* haifa-sched.c (setup_insn_reg_pressure_info,
update_register_pressure): Reject debug insns.
(ready_sort): Don't setup reg pressure for debug insns.
(schedule_insn): Don't update reg pressure for debug insns.
From-SVN: r160761
Richard Guenther [Mon, 14 Jun 2010 18:54:17 +0000 (18:54 +0000)]
lto-streamer.c (cached_bp): Remove.
2010-06-14 Richard Guenther <rguenther@suse.de>
* lto-streamer.c (cached_bp): Remove.
(bitpack_delete): Likewise.
(bitpack_create): Likewise.
(bp_get_next_word): Likewise.
(bp_pack_value, bp_unpack_value): Move ...
* lto-streamer.h (bp_pack_value, bp_unpack_value): ... here.
Re-implement.
(struct bitpack_d): Likewise.
(bitpack_create, lto_output_bitpack, lto_input_bitpack):
New inline functions.
* lto-streamer-out.c (lto_output_bitpack): Remove.
(pack_ts_base_value_fields): Adjust. Avoid conditional
bitpacking.
(pack_value_fields): Adjust.
(lto_write_tree): Likewise.
(output_gimple_stmt): Likewise.
(output_function): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Adjust.
(input_function): Likewise.
(unpack_ts_base_value_fields): Adjust. Avoid conditional
bitpacking.
(lto_input_bitpack): Remove.
(lto_materialize_tree): Adjust.
* Makefile.in (ipa-prop.o): Add $(LTO_STREAMER_H) dependency.
* lto-cgraph.c (lto_output_edge): Adjust.
(lto_output_node): Likewise.
(lto_output_varpool_node): Likewise.
(lto_output_ref): Likewise.
(input_node): Likewise.
(input_varpool_node): Likewise.
(input_ref): Likewise.
(input_edge): Likewise.
(output_node_opt_summary): Likewise.
(input_node_opt_summary): Likewise.
* ipa-pure-const.c (pure_const_write_summary): Likewise.
(pure_const_read_summary): Likewise.
* ipa-prop.c (ipa_write_indirect_edge_info): Likewise.
(ipa_read_indirect_edge_info): Likewise.
(ipa_write_node_info): Likewise.
(ipa_read_node_info): Likewise.
From-SVN: r160760
H.J. Lu [Mon, 14 Jun 2010 17:44:29 +0000 (17:44 +0000)]
Replace 0x1 with 0x0 in AVX vec_extract_lo_* patterns.
gcc/
2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/44534
* config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with
0x0.
(vec_extract_lo_v16hi): Likewise.
(vec_extract_lo_v32qi): Likewise.
gcc/testsuite/
2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/44534
* gcc.target/i386/avx-vextractf128-256-3.c: New.
* gcc.target/i386/avx-vextractf128-256-4.c: Likewise.
From-SVN: r160756
Jakub Jelinek [Mon, 14 Jun 2010 15:53:38 +0000 (17:53 +0200)]
re PR bootstrap/44426 (gcc 4.5.0 requires c9x compiler to build)
PR bootstrap/44426
* tree.h (build_call_expr): Don't define as vararg macro, instead
add a prototype.
* builtins.c (build_call_nofold): Remove.
(expand_builtin_int_roundingfn, expand_builtin_pow,
expand_builtin_mempcpy_args, expand_builtin_stpcpy,
expand_builtin_memset_args, expand_builtin_strcmp,
expand_builtin_strncmp, expand_builtin_memory_chk): Use
build_call_nofold_loc instead of build_call_nofold.
(build_call_expr): New function.
From-SVN: r160754
Jakub Jelinek [Mon, 14 Jun 2010 15:19:04 +0000 (17:19 +0200)]
re PR tree-optimization/44508 (libgomp.fortran/vla1.f90 ICE on s390)
PR tree-optimization/44508
* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE
argument.
* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
don't eliminate trivially dead stmts.
* tree-vrp.c (vrp_finalize): Pass false as last argument
to substitute_and_fold.
* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
to substitute_and_fold.
* tree-ssa-ccp.c (ccp_finalize): Likewise.
* gcc.dg/tree-ssa/pr21086.c: Adjust.
From-SVN: r160749
Ed Schonberg [Mon, 14 Jun 2010 15:04:40 +0000 (15:04 +0000)]
sem_ch3.adb (Build_Derived_Record_Type): if derived type is an anonymous base generated when...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Build_Derived_Record_Type): if derived type is an
anonymous base generated when the parent is a constrained discriminated
type, propagate interface list to first subtype because it may appear
in a current instance within the extension part of the derived type
declaration, and its own subtype declaration has not been elaborated
yet.
* exp_disp.adb (Build_Interface_Thunk): Use base type of formal to
determine whether it has the controlling type.
From-SVN: r160748
Jerome Lambourg [Mon, 14 Jun 2010 15:01:29 +0000 (15:01 +0000)]
exp_ch11.adb (Expand_N_Raise_Statement): Make sure that the explicit raise of CE...
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* exp_ch11.adb (Expand_N_Raise_Statement): Make sure that the explicit
raise of CE, SE and PE have the reason correctly set and are properly
expanded before stopping the expansions of .NET/JVM exceptions.
From-SVN: r160747
Arnaud Charlet [Mon, 14 Jun 2010 13:59:09 +0000 (15:59 +0200)]
Revert change introduced by mistake in previous change.
From-SVN: r160745
Arnaud Charlet [Mon, 14 Jun 2010 13:46:36 +0000 (15:46 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* opt.ads (Check_Policy_List): Add some clarifying comments
* sem_prag.adb (Analyze_Pragma, case Check): Set Pragma_Enabled flag
on rewritten Assert pragma.
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_ch6.adb (Check_Overriding_Indicator): Add a special check for
controlled operations, so that they will be treated as overriding even
if the overridden subprogram is marked Is_Hidden, as long as the
overridden subprogram's parent subprogram is not hidden.
2010-06-14 Robert Dewar <dewar@adacore.com>
* debug.adb: Entry for gnatw.d no longer specific for while loops
* einfo.adb (First_Exit_Statement): New attribute for E_Loop
* einfo.ads (First_Exit_Statement): New attribute for E_Loop
* sem_ch5.adb (Analyze_Loop_Statement): Check_Infinite_Loop_Warning has
new calling sequence to include test for EXIT WHEN.
(Analyze_Exit_Statement): Chain EXIT statement into exit statement chain
* sem_warn.ads, sem_warn.adb (Check_Infinite_Loop_Warning): Now handles
EXIT WHEN case.
* sinfo.adb (Next_Exit_Statement): New attribute of N_Exit_Statement
node.
* sinfo.ads (N_Pragma): Correct comment on Sloc field (points to
PRAGMA, not to pragma identifier).
(Next_Exit_Statement): New attribute of N_Exit_Statement node
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem_res.adb (Resolve_Short_Circuit): Fix sloc of "assertion/check
would fail" msg.
2010-06-14 Robert Dewar <dewar@adacore.com>
* par-ch2.adb (Scan_Pragma_Argument_Association): Clarify message for
missing pragma argument identifier.
2010-06-14 Robert Dewar <dewar@adacore.com>
* atree.ads, atree.adb (Ekind_In): New functions
2010-06-14 Robert Dewar <dewar@adacore.com>
* exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**N in stand alone context
2010-06-14 Robert Dewar <dewar@adacore.com>
* usage.adb (Usage): Redo documentation of -gnatwa.
From-SVN: r160743
Ed Schonberg [Mon, 14 Jun 2010 13:36:42 +0000 (13:36 +0000)]
sem_ch8.adb (Find_Type): The attribute 'class cannot be applied to an untagged incomplete type that is a...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Find_Type): The attribute 'class cannot be applied to
an untagged incomplete type that is a limited view.
From-SVN: r160741
Arnaud Charlet [Mon, 14 Jun 2010 13:32:14 +0000 (15:32 +0200)]
[multiple changes]
2010-06-14 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Add description of '-cargs gcc_switches' to gnatstub
and gnatppa.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb (Expand_Short_Circuit_Operator): New subprogram,
factoring duplicated code between...
(Expand_N_And_Than, Expand_N_Or_Else): Remove duplicated code.
* a-envvar.ads: Minor reformatting
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* ali.adb, ali.ads, lib-xref.ads: Document new '+' letter for C/C++
static entities.
(Scan_ALI): Take into account new Visibility field.
(Visibility_Kind): New type.
(Xref_Entity_Record): Replace Lib field by Visibility.
* gcc-interface/Make-lang.in: Update dependencies.
2010-06-14 Pascal Obry <obry@adacore.com>
* raise.h: Remove unused defintions.
2010-06-14 Bob Duff <duff@adacore.com>
* par-ch10.adb (P_Subunit): If the next token after "separate(X)" is
Tok_Not or Tok_Overriding, call P_Subprogram. We had previously given
the incorrect error "proper body expected".
* par-ch6.adb (P_Subprogram): Suppress "overriding indicator not
allowed here" error in case of subunits, which was triggered by the
above change to P_Subunit.
From-SVN: r160740
Sergey Rybin [Mon, 14 Jun 2010 13:27:18 +0000 (13:27 +0000)]
gnat_ugn.texi, [...]: Update gnatelim doc.
2010-06-14 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi, vms_data.ads: Update gnatelim doc.
From-SVN: r160739
Thomas Quinot [Mon, 14 Jun 2010 13:09:06 +0000 (13:09 +0000)]
lib-util.adb: Minor code reorganization.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* lib-util.adb: Minor code reorganization.
From-SVN: r160738
Robert Dewar [Mon, 14 Jun 2010 13:01:07 +0000 (13:01 +0000)]
ali.adb (Scan_ALI): Implement reading and storing of N lines
2010-06-14 Robert Dewar <dewar@adacore.com>
* ali.adb (Scan_ALI): Implement reading and storing of N lines
(Known_ALI_Lines): Add entry for 'N' (notes)
* ali.ads (Notes): New table to store Notes information
* alloc.ads: Add entries for Notes table
* lib-util.adb (Write_Info_Int): New procedure
(Write_Info_Slit): New procedure
(Write_Info_Uint): New procedure
* lib-util.ads (Write_Info_Int): New procedure
(Write_Info_Slit): New procedure
(Write_Info_Uint): New procedure
* lib-writ.adb (Write_Unit_Information): Output N (notes) lines
* lib-writ.ads: Update documentation for N (Notes) lines
* lib.adb (Store_Note): New procedure
* lib.ads (Notes): New table
(Store_Note): New procedure
* sem_prag.adb: Call Store_Note for affected pragmas
From-SVN: r160736
Thomas Quinot [Mon, 14 Jun 2010 12:56:35 +0000 (12:56 +0000)]
socket.c: Fix wrong condition in #ifdef
2010-06-14 Thomas Quinot <quinot@adacore.com>
* socket.c: Fix wrong condition in #ifdef
* g-socket.adb, g-sothco.ads: Functions imported from socket.c that
take or return char* values can't use Interfaces.C.Strings.chars_ptr,
because on VMS this type is a 32-bit pointer which is not compatible
with the default for C pointers for code compiled with gcc on that
platform.
From-SVN: r160735
Arnaud Charlet [Mon, 14 Jun 2010 12:51:24 +0000 (14:51 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_util (Is_VMS_Operator): New predicate to determine whether an
operator is an intrinsic operator declared in the DEC system extension.
* sem_res.adb (Resolve_Logical_Op): operation is legal on signed types
if the operator is a VMS intrinsic.
* sem_eval.adb (Eval_Logical_Op): Operation is legal and be
constant-folded if the operands are signed and the operator is a VMS
intrinsic.
2010-06-14 Robert Dewar <dewar@adacore.com>
* g-socket.adb, gnatcmd.adb: Minor reformatting
From-SVN: r160734
Arnaud Charlet [Mon, 14 Jun 2010 12:46:56 +0000 (14:46 +0200)]
[multiple changes]
2010-06-14 Pascal Obry <obry@adacore.com>
* s-finimp.adb: Fix typo.
* raise.h: Remove duplicate blank line.
2010-06-14 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Add_Sources): Always set the object file and the
switches file names, as the configuration of the language may change
in an extending project.
(Process_Naming_Scheme): For sources of projects that are extended, set
the configuration of the language from the highest extending project
where the language is declared.
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_res.adb (Resolve_Call): For infinite recursion check, test
whether the called subprogram is inherited from a containing subprogram.
(Same_Or_Aliased_Subprograms): New function
From-SVN: r160733
Arnaud Charlet [Mon, 14 Jun 2010 12:41:52 +0000 (14:41 +0200)]
Minor reformatting.
From-SVN: r160732
Arnaud Charlet [Mon, 14 Jun 2010 12:39:55 +0000 (14:39 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (End_Use_Type): Before indicating that an operator is not
use-visible, check whether it is a primitive for more than one type.
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb (Copy_And_Swap): Copy Has_Pragma_Unmodified flag.
* sem_ch7.adb (Preserve_Full_Attributes): Preserve
Has_Pragma_Unmodified flag.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* g-sttsne-locking.adb, g-sttsne-locking.ads, g-sttsne.ads,
g-sttsne-vxworks.adb, g-sttsne-dummy.ads: Removed. Mutual exclusion is
now done in GNAT.Sockets if necessary.
* gsocket.h, g-socket.adb, g-sothco.ads (GNAT.Sockets.Get_XXX_By_YYY):
Ensure mutual exclusion for netdb operations if the target platform
requires it.
(GNAT.Sockets.Thin_Common): New binding for getXXXbyYYY, treating struct
hostent as an opaque type to improve portability.
* s-oscons-tmplt.c, socket.c: For the case of Vxworks, emulate
gethostbyYYY using proprietary VxWorks API so that a uniform interface
is available for the Ada side.
* gcc-interface/Makefile.in: Remove g-sttsne-*
* gcc-interface/Make-lang.in: Update dependencies.
2010-06-14 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Mapping_File): New function.
From-SVN: r160731
Jakub Jelinek [Mon, 14 Jun 2010 12:30:29 +0000 (14:30 +0200)]
re PR bootstrap/44509 (Revision 160626 breaks bootstrap on *-apple-darwin*)
PR bootstrap/44509
* c-config-lang.in (gtfiles): Add c-family/c-cppbuiltin.c.
* c-family/c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
(lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
(lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
ggc_strdup instead of xstrdup.
* gcc.dg/pr44509.c: New test.
From-SVN: r160729
Arnaud Charlet [Mon, 14 Jun 2010 12:23:26 +0000 (14:23 +0200)]
[multiple changes]
2010-06-14 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Derive_Subprograms): Remove over-restrictive assertion.
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* ali.adb: Fix typo.
* s-auxdec-vms-alpha.adb, scng.ads: Minor reformatting
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb: Make Mark_Context transitive, and apply to subprogram
instances.
* sem_ch8.adb (Find_Expanded_Name): If a candidate compilation unit in
the context does not have a homonym of the selector, emit default
error message.
From-SVN: r160728
Ira Rosen [Mon, 14 Jun 2010 12:22:13 +0000 (12:22 +0000)]
re PR tree-optimization/44507 (vectorization ANDs array elements together incorrectly)
PR tree-optimization/44507
* tree-vect-loop.c (get_initial_def_for_reduction): Use -1
to build initial vector for BIT_AND_EXPR.
* tree-vect-slp.c (vect_get_constant_vectors): Likewise.
From-SVN: r160727
Arnaud Charlet [Mon, 14 Jun 2010 12:16:07 +0000 (14:16 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem.adb, sem_ch12.adb, sem_util.adb: Minor reformatting and
comment addition.
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* lib-xref.ads: Doc updates:
- Allocate 'Q' for #include entity kind
- Free 'Z'
- Allocate 'g' for regular macros
- Allocate 'G' for function-like macros
From-SVN: r160726
Arnaud Charlet [Mon, 14 Jun 2010 12:11:48 +0000 (14:11 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sinfo.ads, sinfo,adb (Withed_Body): New attribute of a with_clause.
Indicates that there is an instantiation in the current unit that
loaded the body of the unit denoted by the with_clause.
* sem_ch12.adb (Mark_Context): When instanting a generic body, check
whether a with_clause in the current context denotes the unit that
holds the generic declaration, and mark the with_clause accordingly.
(Instantiate_Package_Body): call Mark_Context.
* sem.adb (Process_Bodies_In_Context): Use Withed_Body to determine
whether a given body should be traversed before the spec of the main
unit.
2010-06-14 Ed Falis <falis@adacore.com>
* sysdep.c: Fix 653 build against vThreads headers
From-SVN: r160725
Robert Dewar [Mon, 14 Jun 2010 10:55:18 +0000 (10:55 +0000)]
sinfo.ads: Minor reformatting.
2010-06-14 Robert Dewar <dewar@adacore.com>
* sinfo.ads: Minor reformatting.
From-SVN: r160724
Arnaud Charlet [Mon, 14 Jun 2010 10:50:03 +0000 (12:50 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Body): Do not check conformance when
the spec has been generated for a body without spec that carries an
Inline_Always pragma.
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* lib-xref.ads: Documentation change: allocate 'Z' letter to C/C++
macro.
From-SVN: r160723
Jerome Lambourg [Mon, 14 Jun 2010 10:26:38 +0000 (10:26 +0000)]
exp_dbug.adb (Debug_Renaming_Declaration): Do not output any debug declaration for VMs...
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* exp_dbug.adb (Debug_Renaming_Declaration): Do not output any debug
declaration for VMs, as those are useless and might lead to duplicated
local variable names in the generated code.
* gcc-interface/Make-lang.in: Update dependdencies.
From-SVN: r160721
Arnaud Charlet [Mon, 14 Jun 2010 10:09:30 +0000 (12:09 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* opt.ads, sem.adb, sem_elab.adb: Minor reformatting
2010-06-14 Robert Dewar <dewar@adacore.com>
* exp_aggr.adb (Has_Address_Clause): Moved to Exp_Util, and there it
is renamed as Has_Following_Address_Clause.
* exp_ch3.adb (Needs_Simple_Initialization): Add Consider_IS argument
to allow the caller to avoid Initialize_Scalars having an effect.
(Expand_N_Object_Declaration): Do not do Initialize_Scalars stuff for
scalars with an address clause specified.
* exp_ch3.ads (Needs_Simple_Initialization): Add Consider_IS argument
to allow the caller to avoid Initialize_Scalars having an effect.
* exp_util.adb (Has_Following_Address_Clause): Moved here from Exp_Aggr
(where it was called Has_Address_Clause).
* exp_util.ads (Has_Following_Address_Clause): Moved here from Exp_Aggr
(where it was called Has_Address_Clause).
* freeze.adb (Warn_Overlay): Suppress message about overlaying causing
problems for Initialize_Scalars (since we no longer initialize objects
with an address clause.
2010-06-14 Robert Dewar <dewar@adacore.com>
* exp_prag.adb (Expand_Pragma_Check): Set Loc of generated code from
condition.
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Debug_Info_Needed
on the entity of an implicitly generated postcondition procedure.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* sem_ch7.adb (Preserve_Full_Attributes): Propagate
Discriminant_Constraint elist from full view to private view.
From-SVN: r160720
Arnaud Charlet [Mon, 14 Jun 2010 09:37:52 +0000 (11:37 +0200)]
Minor reformatting.
From-SVN: r160719
Arnaud Charlet [Mon, 14 Jun 2010 09:34:49 +0000 (11:34 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem_res.adb: Minor reformatting
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem.adb: New version of unit traversal.
* sem_elab.adb (Check_Internal_Call): Do not place a call appearing
within a generic unit in the table of delayed calls.
From-SVN: r160718
Arnaud Charlet [Mon, 14 Jun 2010 09:28:36 +0000 (11:28 +0200)]
Fix typo.
From-SVN: r160717
Arnaud Charlet [Mon, 14 Jun 2010 09:26:32 +0000 (11:26 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* gnatcmd.adb, sem_util.adb, exp_ch3.adb: Minor reformatting
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Save_References): If an identifier has been rewritten
during analysis as an explicit dereference, keep the reference implicit
in the generic, but preserve the entity if global. This prevents
malformed generic trees in the presence of some nested generics.
2010-06-14 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: For the GNAT driver, clarify the effect of calling the
tool with '-files=' option. Also fix some small errors (wrong brackets)
From-SVN: r160716
Vincent Celier [Mon, 14 Jun 2010 09:22:35 +0000 (09:22 +0000)]
gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all the ALI files on the...
2010-06-14 Vincent Celier <celier@adacore.com>
* gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all
the ALI files on the command line.
* ali.adb (Scan_ALI): Set component Directly_Scanned of the unit(s) to
the same value as the parameter of the same name.
* ali.ads (Scan_ALI): New Boolean parameter Directly_Scanned, defaulted
to False.
* bindgen.adb (Gen_Versions_Ada): Never emit version symbols for
Stand-Alone Library interfaces. When binding Stand-Alone Libraries,
emit version symbols only for the units of the library.
(Gen_Versions_C): Ditto.
From-SVN: r160715
Arnaud Charlet [Mon, 14 Jun 2010 09:17:14 +0000 (11:17 +0200)]
[multiple changes]
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_ch4.adb: Fix typo.
2010-06-14 Vasiliy Fofanov <fofanov@adacore.com>
* s-oscons-tmplt.c (IOV_MAX): redefine on Tru64 and VMS since the
vector IO doesn't work at default value properly.
2010-06-14 Doug Rupp <rupp@adacore.com>
* s-stoele.adb: Remove unnecessary qualification of To_Address for VMS.
2010-06-14 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Check_Files): Do not invoke the tool with all the
sources of the project if a switch -files= is used.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* exp_attr.adb: Minor reformatting
From-SVN: r160714
Arnaud Charlet [Mon, 14 Jun 2010 09:08:47 +0000 (11:08 +0200)]
[multiple changes]
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* gnat_ugn.texi: Minor typo fixes and wording changes
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_One_Call): If the call has been rewritten from a
prefixed form, do not re-analyze first actual, which may need an
implicit dereference.
* sem_ch6.adb (Analyze_Procedure_Call): If the call is given in
prefixed notation, the analysis will rewrite the node, and possible
errors appear in the rewritten name of the node.
* sem_res.adb: If a call is ambiguous because its first parameter is
an overloaded call, report list of candidates, to clarify ambiguity of
enclosing call.
2010-06-14 Doug Rupp <rupp@adacore.com>
* s-auxdec-vms-alpha.adb: New package body implementing legacy
VAX instructions with Asm insertions.
* s-auxdec-vms_64.ads: Inline VAX queue functions
* s-stoele.adb: Resolve some ambiguities in To_Addresss with s-suxdec
that show up only on VMS.
* gcc-interface/Makefile.in: Provide translation for
s-auxdec-vms-alpha.adb.
From-SVN: r160713
Olivier Hainque [Mon, 14 Jun 2010 08:31:33 +0000 (08:31 +0000)]
initialize.c (VxWorks section): Update comments.
2010-06-14 Olivier Hainque <hainque@adacore.com>
* initialize.c (VxWorks section): Update comments.
From-SVN: r160712
Arnaud Charlet [Mon, 14 Jun 2010 08:27:05 +0000 (10:27 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* a-convec.adb, sem_prag.adb, checks.adb: Minor reformatting
2010-06-14 Eric Botcazou <ebotcazou@adacore.com>
* init.c: Code clean up.
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): Do
not insert address clause in table for later validation if type of
entity is generic, to prevent possible spurious errors.
* sem_ch8.adb: Code clean up.
2010-06-14 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Expanded @ovar macro inline to solve problem with
texi2pdf and texi2html.
Document how to change scheduling properties on HP-UX.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* g-socket.ads: Remove misleading comments.
From-SVN: r160711
Arnaud Charlet [Mon, 14 Jun 2010 08:20:41 +0000 (10:20 +0200)]
[multiple changes]
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* sem_prag.adb (Check_Duplicated_Export_Name): Remove check for
CLI_Target as this prevents proper detection of exported names
duplicates when the exported language is different to CIL.
(Process_Interface_Name): Add check for CIL convention exports,
replacing the old one from Check_Duplicated_Export_Name.
2010-06-14 Matthew Heaney <heaney@adacore.com>
* a-coinve.adb, a-convec.adb (operator "&"): Check both that new length
and new last satisfy constraints.
(Delete_Last): prevent overflow for subtraction of index values
(To_Vector): prevent overflow for addition of index values
From-SVN: r160710
Ed Schonberg [Mon, 14 Jun 2010 08:14:10 +0000 (08:14 +0000)]
sem_ch4.adb (Complete_Object_Operation): After analyzing the rewritten call...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Complete_Object_Operation): After analyzing the
rewritten call, preserve the resulting type to prevent spurious errors,
when the call is implicitly dereferenced in the context of an in-out
actual.
* checks.adb (Apply_Discriminant_Check): If the target of the
assignment is a renaming of a heap object, create constrained type for
it to apply check.
From-SVN: r160709
Arnaud Charlet [Mon, 14 Jun 2010 08:06:34 +0000 (10:06 +0200)]
[multiple changes]
2010-06-14 Pascal Obry <obry@adacore.com>
* prj-proc.adb: Fix copy of object directory for extending projects.
2010-06-14 Jose Ruiz <ruiz@adacore.com>
* init.c (__gnat_alternate_stack): Define this space for PowerPC linux
(__gnat_install_handler, PowerPC linux): Activate the alternative
signal stack.
From-SVN: r160708
Jakub Jelinek [Mon, 14 Jun 2010 07:25:44 +0000 (09:25 +0200)]
s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly adjust z10prop set_attr.
* config/s390/s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly
adjust z10prop set_attr.
From-SVN: r160707
Eric Botcazou [Mon, 14 Jun 2010 05:43:56 +0000 (05:43 +0000)]
Fix long lines
From-SVN: r160699
GCC Administrator [Mon, 14 Jun 2010 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r160694
Gerald Pfeifer [Sun, 13 Jun 2010 23:14:45 +0000 (23:14 +0000)]
libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
* libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
Update copyright years.
Move to GFDL 1.3.
From-SVN: r160690
H.J. Lu [Sun, 13 Jun 2010 19:55:43 +0000 (19:55 +0000)]
Add "c-family/" to c-common.h, c-pretty-print.h and c-pragma.h.
2010-06-13 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/plugin/header_plugin.c: Add "c-family/" to c-common.h
and c-pretty-print.h.
* g++.dg/plugin/pragma_plugin.c: Add "c-family/" to c-pragma.h.
From-SVN: r160687
Daniel Franke [Sun, 13 Jun 2010 16:05:01 +0000 (12:05 -0400)]
re PR fortran/31588 (gfortran should be able to output Makefile dependencies with -M* options)
2010-06-13 Daniel Franke <franke.daniel@gmail.com>
PR fortran/31588
PR fortran/43954
* gfortranspec.c (lang_specific_driver): Removed deprecation
warning for -M.
* lang.opt: Add options -M, -MM, -MD, -MMD, -MF, -MG, -MP, -MT, -MQ.
* lang-specs.h (CPP_FORWARD_OPTIONS): Add -M* options.
* cpp.h (gfc_cpp_makedep): New.
(gfc_cpp_add_dep): New.
(gfc_cpp_add_target): New.
* cpp.c (gfc_cpp_option): Add deps* members.
(gfc_cpp_makedep): New.
(gfc_cpp_add_dep): New.
(gfc_cpp_add_target): New.
(gfc_cpp_init_options): Initialize new options.
(gfc_cpp_handle_option): Handle new options.
(gfc_cpp_post_options): Map new options to libcpp-options.
(gfc_cpp_init): Handle deferred -MQ and -MT options.
(gfc_cpp_done): If requested, write dependencies to file.
* module.c (gfc_dump_module): Add a module filename as target.
* scanner.c (open_included_file): New parameter system; add the
included file as dependency.
(gfc_open_included_file): Add the included file as dependency.
(gfc_open_intrinsic_module): Likewise.
* invoke.texi: Removed deprecation warning for -M.
* gfortran.texi: Removed Makefile-dependencies project.
From-SVN: r160684
Paolo Carlini [Sun, 13 Jun 2010 15:44:51 +0000 (15:44 +0000)]
base.h (min, max): Mark inline.
2010-06-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/base.h (min, max): Mark inline.
* include/parallel/set_operations.h (__parallel_set_operation):
Uglify the Operation template parameter.
From-SVN: r160683
Jan Hubicka [Sun, 13 Jun 2010 14:50:26 +0000 (16:50 +0200)]
bitmap.c (bitmap_and, [...]): Turn internal datastructure checks into checking asserts.
* bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
bitmap_and_compl_into, bitmap_compl_and_into, bitmap_ior,
bitmap_ior_into, bitmap_xor, bitmap_xor_into,
bitmap_ior_and_compl, bitmap_ior_and_compl): Turn internal datastructure
checks into checking asserts.
* rtlanal.c (find_reg_note): Use gcc_checking_assert.
* tree-ssa-sccvn.c (VN_INFO): Likewise.
* df-scan.c (df_reorganize_refs_by_reg_by_reg, df_install_ref,
df_ref_create_structure): Likewise.
* alloc-pool.c (create_alloc_pool, empty_alloc_pool, pool_alloc,
pool_free): Use gcc_checking_assert.
* alias.c (get_alias_set): Likewise.
* var-tracking.c (variable_htab_free, shared_hash_copy,
canonicalize_values_mark, variable_merge_over_cur): Likewise.
* lto-streamer.c (bp_unpack_value): Likewise.
From-SVN: r160681
Gerald Pfeifer [Sun, 13 Jun 2010 14:36:24 +0000 (14:36 +0000)]
gnat_rm.texi: Move to GFDL version 1.3.
* gnat_rm.texi: Move to GFDL version 1.3.
* gnat-style.texi: Ditto.
* gnat_ugn.texi: Ditto.
From-SVN: r160680
Richard Guenther [Sun, 13 Jun 2010 14:14:17 +0000 (14:14 +0000)]
lto-streamer-in.c (lto_input_ts_type_tree_pointers): Do not stream but initialize TYPE_CANONICAL to NULL.
2010-06-13 Richard Guenther <rguenther@suse.de>
* lto-streamer-in.c (lto_input_ts_type_tree_pointers):
Do not stream but initialize TYPE_CANONICAL to NULL.
(lto_output_ts_type_tree_pointers): Do not stream TYPE_CANONICAL.
* gimple.c (gimple_types_compatible_p): Disregard
TYPE_STRUCTURAL_EQUALITY_P.
(gimple_register_type): Use TYPE_CANONICAL as cache.
* lto-streamer.c (lto_record_common_node): Zero TYPE_CANONICAL
before registering common types.
* config/i386/i386.c (ix86_function_arg_boundary): Do not
use TYPE_CANONICAL, instead use TYPE_MAIN_VARIANT.
* tree.h (TYPE_CANONICAL): Clarify documentation.
lto/
* lto.c (lto_fixup_type): Do not register or fixup TYPE_CANONICAL.
From-SVN: r160679
Anatoly Sokolov [Sun, 13 Jun 2010 11:04:19 +0000 (15:04 +0400)]
ia64.h (FUNCTION_VALUE_REGNO_P, [...]): Remove macros.
* config/ia64/ia64.h (FUNCTION_VALUE_REGNO_P, FUNCTION_VALUE,
LIBCALL_VALUE): Remove macros.
* config/ia64/ia64-protos.h (ia64_function_value): Remove.
* config/ia64/ia64.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
TARGET_FUNCTION_VALUE_REGNO_P): Define.
(ia64_libcall_value, ia64_function_value_regno_p): New functions.
(ia64_function_value): Make static. Handle receiving the function
type in 'fn_decl_or_type' argunent. Add 'outgoing' argument.
From-SVN: r160678
Daniel Franke [Sun, 13 Jun 2010 10:04:27 +0000 (06:04 -0400)]
whole_file_18.f90: Updated error message.
2010-06-13 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/whole_file_18.f90: Updated error message.
From-SVN: r160676
Shujing Zhao [Sun, 13 Jun 2010 03:06:39 +0000 (03:06 +0000)]
typeck.c (convert_for_assignment): Fix comment.
2010-06-13 Shujing Zhao <pearly.zhao@oracle.com>
* typeck.c (convert_for_assignment): Fix comment. Change message
format from %d to %qP.
(convert_for_initialization): Fix comment.
From-SVN: r160671
Jan Hubicka [Sun, 13 Jun 2010 01:08:01 +0000 (03:08 +0200)]
cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p at correct place.
* cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p
at correct place.
From-SVN: r160669
GCC Administrator [Sun, 13 Jun 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160668
Bernd Schmidt [Sat, 12 Jun 2010 23:25:37 +0000 (23:25 +0000)]
arm.c (thumb2_reorg): Fix errors in previous change.
* config/arm/arm.c (thumb2_reorg): Fix errors in previous change.
From-SVN: r160664
Daniel Franke [Sat, 12 Jun 2010 13:43:48 +0000 (09:43 -0400)]
resolve.c (resolve_global_procedure): Improved checking if an explicit interface is required.
gcc/fortran/:
2010-06-12 Daniel Franke <franke.daniel@gmail.com>
* resolve.c (resolve_global_procedure): Improved checking if an
explicit interface is required.
gcc/testsuite/:
2010-06-12 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/whole_file_20.f03: New.
From-SVN: r160663
Kai Tietz [Sat, 12 Jun 2010 13:19:17 +0000 (15:19 +0200)]
2010-06-12 Kai Tietz
PR ada/43731
* gcc-interface/Makefile.in: Add rules for multilib x86/x64
mingw targets.
From-SVN: r160662
Jan Hubicka [Sat, 12 Jun 2010 12:46:46 +0000 (12:46 +0000)]
Fix typo.
From-SVN: r160661
Jan Hubicka [Sat, 12 Jun 2010 12:45:26 +0000 (14:45 +0200)]
df-core.c (df_clear_bb_info): New function.
* df-core.c (df_clear_bb_info): New function.
(df_set_blocks): bb_info is always allocated.
(df_get_bb_info): Use block_info_elt_size.
(df_set_bb_info): Likewise.
(df_compact_blocks): Update for new block_info.
(grow_bb_info): New function.
* df-problems.c (df_grow_bb_info): Move to df-core.c
(df_rd_set_bb_info): Remove.
(df_rd_free_bb_info): Do not free block pool.
(df_rd_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_rd_free): DO not free alloc pool; clear block_info.
(problem_RD): Add size of block info structure.
(df_lr_set_bb_info): Remove.
(df_lr_free_bb_info): Do not free block pool.
(df_lr_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_lr_free): DO not free alloc pool; clear block_info.
(problem_LR): Add size of block info structure.
(df_live_set_bb_info): Remove.
(df_live_free_bb_info): Do not free block pool.
(df_live_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_live_free): DO not free alloc pool; clear block_info.
(problem_LIVE): Add size of block info structure.
(problem_CHAIN): Add size of block info structure.
(df_byte_lr_set_bb_info): Remove.
(df_byte_lr_free_bb_info): Do not free block pool.
(df_byte_lr_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_byte_lr_free): DO not free alloc pool; clear block_info.
(problem_BYTE_LR): Add size of block info structure.
(problem_NOTE): Add size of block info structure.
(df_byte_MD_set_bb_info): Remove.
(df_byte_MD_free_bb_info): Do not free block pool.
(df_byte_MD_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_byte_MD_free): DO not free alloc pool; clear block_info.
(problem_BD): Add size of block info structure.
* df-scan.c (df_scan_free_internal): Free block pool.
(df_scan_set_bb_info): Remove.
(df_scan_free_bb_info): Check for artificial_defs instead
of bb_info being non-NULL.
(df_scan_alloc): DO not create df_scan_block pool.
(problem_SCAN): Set size of block info.
(df_bb_refs_record): Do not allocate bb_info.
* df.h (df_problem): Add block_info_elt_size.
(struct dataflow): Change block_info to void *.
(df_scan_get_bb_info, df_rd_get_bb_info, df_lr_get_bb_info,
df_md_get_bb_info, df_live_get_bb_info, df_byte_lr_get_bb_info): Return
in-line structures.
From-SVN: r160660
Jan Hubicka [Sat, 12 Jun 2010 12:43:02 +0000 (14:43 +0200)]
re PR tree-optimization/44485 (ICE in get_expr_operands, at tree-ssa-operands.c:1020)
PR tree-optimize/44485
* tree-cfgcleanup.c (fixup_noreturn_call): Remove basic blocks containing
use of return value of noreturn function.
* gcc.c-torture/compile/pc44485.c: New testcase.
From-SVN: r160659
Anatoly Sokolov [Sat, 12 Jun 2010 08:17:18 +0000 (12:17 +0400)]
targhooks.c (default_function_value): Don't use FUNCTION_OUTGOING_VALUE.
* targhooks.c (default_function_value): Don't use
FUNCTION_OUTGOING_VALUE.
* system.h (FUNCTION_OUTGOING_VALUE): Poison.
* doc/tm.texi (FUNCTION_OUTGOING_VALUE): Removed.
From-SVN: r160656
Kazu Hirata [Sat, 12 Jun 2010 07:44:51 +0000 (07:44 +0000)]
config.gcc (mips64*-*-linux*, [...]): Add crtfastmath.o to extra_parts.
gcc/
* config.gcc (mips64*-*-linux*, mipsisa64*-*-linux*,
mips*-*-linux*): Add crtfastmath.o to extra_parts.
* config/mips/crtfastmath.c: New.
* config/mips/linux.h (ENDFILE_SPEC): New.
libgcc/
* config.host (mips64*-*-linux*, mips*-*-linux*): Add mips/t-crtfm
to tmake_file. Add crtfastmath.o to extra_parts.
* config/mips/t-crtfm: New.
From-SVN: r160655
Sebastian Pop [Sat, 12 Jun 2010 07:39:25 +0000 (07:39 +0000)]
Don't call pbb_to_depth_to_oldiv from compute_type_for_level.
2010-06-12 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass
old_type in parameter.
(gcc_type_for_value): Update call to gcc_type_for_interval.
(compute_type_for_level_1): Renamed compute_type_for_level.
Update call to gcc_type_for_interval.
From-SVN: r160649
Francois-Xavier Coudert [Sat, 12 Jun 2010 06:57:22 +0000 (06:57 +0000)]
trans-decl.c (gfc_build_intrinsic_function_decls): Fix return type.
* trans-decl.c (gfc_build_intrinsic_function_decls): Fix
return type.
* trans-intrinsic.c (gfc_conv_intrinsic_fdate): Fix argument type.
(gfc_conv_intrinsic_ttynam): Likewise.
(gfc_conv_intrinsic_trim): Likewise.
From-SVN: r160648
Janus Weil [Sat, 12 Jun 2010 04:10:25 +0000 (06:10 +0200)]
re PR fortran/40117 ([OOP][F2008] Type-bound procedure: allow list after PROCEDURE)
2010-06-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/40117
* decl.c (match_procedure_in_type): Allow procedure lists (F08).
2010-06-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/40117
* gfortran.dg/typebound_proc_4.f03: Modified error message.
* gfortran.dg/typebound_proc_14.f03: New.
* gfortran.dg/typebound_proc_15.f03: New.
From-SVN: r160646
GCC Administrator [Sat, 12 Jun 2010 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r160644
Joseph Myers [Sat, 12 Jun 2010 00:13:23 +0000 (01:13 +0100)]
common.opt (Wstrict-aliasing=, [...]): Add RejectNegative.
* common.opt (Wstrict-aliasing=, Wstrict-overflow=, fabi-version=,
flto-compression-level=, ftree-parallelize-loops=): Add
RejectNegative.
testsuite:
* gcc.dg/opts-1.c: New test.
From-SVN: r160640
Joseph Myers [Sat, 12 Jun 2010 00:12:12 +0000 (01:12 +0100)]
opts-common.c: Include options.h.
* opts-common.c: Include options.h.
(integral_argument): Move from opts.c.
(decode_cmdline_option): New. Based on read_cmdline_option.
* opts.c (integral_argument): Move to opts-common.c.
(read_cmdline_option): Move most contents to
decode_cmdline_option. Use %qs in diagnostics.
* opts.h (CL_ERR_DISABLED, CL_ERR_MISSING_ARG, CL_ERR_WRONG_LANG,
CL_ERR_UINT_ARG, struct cl_decoded_option, integral_argument,
decode_cmdline_option): New.
testsuite:
* gcc.dg/funroll-loops-all.c: Update expected error.
From-SVN: r160639
Uros Bizjak [Fri, 11 Jun 2010 21:58:31 +0000 (23:58 +0200)]
re PR target/44481 (__builtin_parity() causes ICE in trunc_int_for_mode())
PR target/44481
* config/i386/i386.md (UNSPEC_PARITY): New unspec.
(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
(partiysi2_cmp): Ditto.
(*partiyhi2_cmp): Ditto.
(*parityqi2_cmp): Remove.
testsuite/ChangeLog:
PR target/44481
* gcc.target/i386/pr44481.c: New test.
From-SVN: r160638
Jan Hubicka [Fri, 11 Jun 2010 21:56:08 +0000 (23:56 +0200)]
bitmap.h (+bmp_iter_next_bit): New.
* bitmap.h (+bmp_iter_next_bit): New.
(bmp_iter_set, bmp_iter_and, bmp_iter_and_compl):
Use it.
From-SVN: r160637
Sandra Loosemore [Fri, 11 Jun 2010 21:53:59 +0000 (17:53 -0400)]
tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the computed cost.
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
computed cost.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r160636
Eric Botcazou [Fri, 11 Jun 2010 20:52:49 +0000 (20:52 +0000)]
Fix date
From-SVN: r160633
Eric Botcazou [Fri, 11 Jun 2010 20:50:46 +0000 (20:50 +0000)]
re PR rtl-optimization/42461 (missed optimization for pure functions)
PR rtl-optimization/42461
* gcc.dg/pr42461.c: Compile at -O2 instead of -O.
From-SVN: r160632
Manuel López-Ibáñez [Fri, 11 Jun 2010 19:56:18 +0000 (19:56 +0000)]
c-common.c (conversion_warning): Warn at expression location.
2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
c-family/
* c-common.c (conversion_warning): Warn at expression
location.
From-SVN: r160631
Alexandre Oliva [Fri, 11 Jun 2010 19:41:28 +0000 (19:41 +0000)]
* gcc-interface/utils.c (update_pointer_to): Initialize last.
From-SVN: r160630
Francois-Xavier Coudert [Fri, 11 Jun 2010 19:36:40 +0000 (19:36 +0000)]
* trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Fix comment.
From-SVN: r160629
Francois-Xavier Coudert [Fri, 11 Jun 2010 19:35:19 +0000 (19:35 +0000)]
mathbuiltins.def: Add builtins that do not directly correspond to a Fortran intrinsic...
* mathbuiltins.def: Add builtins that do not directly correspond
to a Fortran intrinsic, with new macro OTHER_BUILTIN.
* f95-lang.c (gfc_init_builtin_functions): Define OTHER_BUILTIN.
* trans-intrinsic.c (gfc_intrinsic_map_t): Remove
code_{r,c}{4,8,10,16} fields. Add
{,complex}{float,double,long_double}_built_in fields.
(gfc_intrinsic_map): Adjust definitions of DEFINE_MATH_BUILTIN,
DEFINE_MATH_BUILTIN_C and LIB_FUNCTION accordingly. Add
definition of OTHER_BUILTIN.
(real_compnt_info): Remove unused struct.
(builtin_decl_for_precision, builtin_decl_for_float_kind): New
functions.
(build_round_expr): Call builtin_decl_for_precision instead of
series of if-else.
(gfc_conv_intrinsic_aint): Call builtin_decl_for_float_kind
instead of a switch.
(gfc_build_intrinsic_lib_fndecls): Match
{real,complex}{4,8,10,16}decl into the C-style built_in_decls.
(gfc_get_intrinsic_lib_fndecl): Do not hardcode floating-point
kinds.
(gfc_conv_intrinsic_lib_function): Go through all the extended
gfc_intrinsic_map.
(gfc_trans_same_strlen_check): Call builtin_decl_for_float_kind
instead of a switch.
(gfc_conv_intrinsic_abs): Likewise.
(gfc_conv_intrinsic_mod): Likewise.
(gfc_conv_intrinsic_sign): Likewise.
(gfc_conv_intrinsic_fraction): Likewise.
(gfc_conv_intrinsic_nearest): Likewise.
(gfc_conv_intrinsic_spacing): Likewise.
(gfc_conv_intrinsic_rrspacing): Likewise.
(gfc_conv_intrinsic_scale): Likewise.
(gfc_conv_intrinsic_set_exponent): Likewise.
From-SVN: r160628
Uros Bizjak [Fri, 11 Jun 2010 19:01:47 +0000 (21:01 +0200)]
i386.md (unspec): New define_c_enum.
* config/i386/i386.md (unspec): New define_c_enum.
(unspecv): Ditto.
From-SVN: r160627
Jakub Jelinek [Fri, 11 Jun 2010 18:37:34 +0000 (20:37 +0200)]
cpplib.h (struct cpp_callbacks): Add user_builtin_macro callback.
* include/cpplib.h (struct cpp_callbacks): Add user_builtin_macro
callback.
(enum cpp_builtin_type): Add BT_FIRST_USER and BT_LAST_USER.
(cpp_macro_definition): Remove const qual from second argument.
* macro.c (enter_macro_context): Call user_builtin_macro callback for
NODE_BUILTIN !NODE_USED macros.
(warn_of_redefinition): Likewise. Remove const qual from second
argument.
(cpp_macro_definition): Likewise.
* pch.c (write_macdef, save_macros): Call user_builtin_macro callback
for NODE_BUILTIN !NODE_USED macros.
* c-family/c-cppbuiltin.c: Include cpp-id-data.h.
(lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
(lazy_hex_fp_value): New function.
(builtin_define_with_hex_fp_value): Provide definitions lazily.
* Makefile.in (c-family/c-cppbuiltin.o): Depend on $(CPP_ID_DATA_H).
From-SVN: r160626
Sebastian Pop [Fri, 11 Jun 2010 18:28:17 +0000 (18:28 +0000)]
Fix PR44483: incrementally gimplify BB predicates to avoid redundant computations.
2010-06-11 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44483
* tree-if-conv.c (bb_predicate_s): New struct.
(bb_predicate_p): New.
(bb_has_predicate): New.
(bb_predicate): New.
(set_bb_predicate): New.
(bb_predicate_gimplified_stmts): New.
(set_bb_predicate_gimplified_stmts): New.
(add_bb_predicate_gimplified_stmts): New.
(init_bb_predicate): New.
(free_bb_predicate): New.
(is_predicated): Use bb_predicate.
(add_to_predicate_list): Use bb_predicate and set_bb_predicate.
(predicate_bbs): Same. Gimplify the condition of the basic blocks
before processing their successors.
(clean_predicate_lists): Removed.
(find_phi_replacement_condition): Use bb_predicate.
(process_phi_nodes): Renamed ifconvert_phi_nodes. Avoid useless
computations.
(insert_gimplified_predicates): New.
(combine_blocks): Call insert_gimplified_predicates.
(tree_if_conversion): Call free_bb_predicate instead of
clean_predicate_lists.
* gcc.dg/tree-ssa/pr44483.c: New.
From-SVN: r160625
Paul Brook [Fri, 11 Jun 2010 16:55:42 +0000 (16:55 +0000)]
arm-neon-1.C: New test.
2010-06-11 Paul Brook <paul@codesourcery.com>
gcc/testsuite/
* g++.dg/other/arm-neon-1.C: New test.
From-SVN: r160623
Paul Thomas [Fri, 11 Jun 2010 16:45:48 +0000 (16:45 +0000)]
re PR fortran/42051 ([OOP] ICE on array-valued function with CLASS formal argument)
2010-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42051
PR fortran/43896
* trans-expr.c (gfc_conv_derived_to_class): Handle array-valued
functions with CLASS formal arguments.
2010-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42051
PR fortran/43896
* gfortran.dg/class_23.f03: New test.
From-SVN: r160622
Paolo Carlini [Fri, 11 Jun 2010 16:20:24 +0000 (16:20 +0000)]
shared_ptr.h (hash<shared_ptr>): Add.
2010-06-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/shared_ptr.h (hash<shared_ptr>): Add.
* include/bits/shared_ptr_base.h (hash<__shared_ptr>): Likewise.
* include/bits/unique_ptr.h (hash<unique_ptr>): Likewise.
* testsuite/20_util/shared_ptr/hash/1.cc: New.
* testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
From-SVN: r160621
Jonathan Wakely [Fri, 11 Jun 2010 16:04:52 +0000 (16:04 +0000)]
appendix_contributing.xml: Indent code examples to match original C++STYLE document.
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/appendix_contributing.xml: Indent code examples
to match original C++STYLE document. Fix typos and syntax errors.
Add some basic docbook markup.
* doc/html/*: Regenerate.
From-SVN: r160620
Paul Brook [Fri, 11 Jun 2010 15:45:39 +0000 (15:45 +0000)]
invoke.texi: Document ARM -mcpu=cortex-m4.
2010-10-11 Paul Brook <paul@codesourcery.com>
* doc/invoke.texi: Document ARM -mcpu=cortex-m4.
* config/arm/arm.c (all_architectures): Change v7e-m default to
cortexm4.
* config/arm/arm-cores.def: Add cortex-m4.
* config/arm/arm-tune.md: Regenerate.
From-SVN: r160618
Jonathan Wakely [Fri, 11 Jun 2010 15:31:53 +0000 (15:31 +0000)]
re PR libstdc++/44268 (abi docs say that hppa-linux defaults to libgcc_s.so.2)
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/44268
* doc/xml/manual/abi.xml: Fix libgcc version for hppa-linux.
From-SVN: r160617
Jan Hubicka [Fri, 11 Jun 2010 15:12:48 +0000 (17:12 +0200)]
ipa-pure-const.c (special_builtlin_state): New function.
* ipa-pure-const.c (special_builtlin_state): New function.
(check_call): Use it instead of special casign BUILT_IN_RETURN.
(propagate_pure_const): Use it.
* gcc.dg/ipa/pure-const-2.c: New testcase.
From-SVN: r160615
Jan Hubicka [Fri, 11 Jun 2010 15:10:27 +0000 (15:10 +0000)]
Revert accidental commit.
From-SVN: r160614
Jonathan Wakely [Fri, 11 Jun 2010 15:02:33 +0000 (15:02 +0000)]
tuple (_Swallow_assign::operator=): Add const.
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/tuple (_Swallow_assign::operator=): Add const.
(ignore): Replace anonymous namespace member with const instance.
From-SVN: r160613
Jan Hubicka [Fri, 11 Jun 2010 14:33:28 +0000 (16:33 +0200)]
df-problems.c (df_live_scratch): Convert to bitmap_head.
* df-problems.c (df_live_scratch): Convert to bitmap_head.
(df_live_alloc): Initialize df_live_scratch when initializing
problem_data.
(df_live_transfer_function): Update uses of df_live_scratch.
(df_live_free): Free problem_data; clear df_live_scratch before
releasing the obstack.
(df_md_free): Free problem data.
From-SVN: r160612
Jan Hubicka [Fri, 11 Jun 2010 12:29:53 +0000 (14:29 +0200)]
invoke.texi (Wsuggest-attribute): Document.
* doc/invoke.texi (Wsuggest-attribute): Document.
(Wmissing-noreturn): Remove.
* ipa-pure-const.c (warn_function_noreturn): New function.
* opts.c (decode_options): Set warn_suggest_attribute_noreturn on
warn_missing_noreturn.
* common.opt (Wsuggest-attribute=noreturn): New.
* tree-flow.h (warn_function_noreturn): Declare.
* tree-cfg.c (execute_warn_function_noreturn): Use
warn_function_noreturn.
(gate_warn_function_noreturn): New.
(pass_warn_function_noreturn): Update.
From-SVN: r160606
Manuel López-Ibáñez [Fri, 11 Jun 2010 09:43:53 +0000 (09:43 +0000)]
c-typeck.c (handle_warn_cast_qual): Add loc parameter.
2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
* c-typeck.c (handle_warn_cast_qual): Add loc
parameter. Improve warning message.
(build_c_cast): Pass location to handle_warn_cast_qual.
From-SVN: r160601
Uros Bizjak [Fri, 11 Jun 2010 09:38:59 +0000 (11:38 +0200)]
i386.md (pro_epilogue_adjust_stack_1): Assert that operand 0 == operand 1.
* config/i386/i386.md (pro_epilogue_adjust_stack_1) <TYPE_ALU>: Assert
that operand 0 == operand 1. Use x86_maybe_negate_const_int to output
insn mnemonic.
(pro_epilogue_adjust_stack_rex64) <TYPE_ALU>: Ditto.
From-SVN: r160600
Dodji Seketeli [Fri, 11 Jun 2010 08:19:21 +0000 (08:19 +0000)]
Fix MIPS bootstrap
gcc/ChangeLog:
Fix bootstap on mips
* dwarf2out.c (is_naming_typedef_dec): Built-in TYPE_DECLs cannot
be naming typedefs.
gcc/testsuite/ChangeLog:
Fix MIPS bootstrap
* g++.dg/other/typedef4.C: New test.
From-SVN: r160599