Nathan Froyd [Sat, 9 Oct 2010 14:21:10 +0000 (14:21 +0000)]
pa-protos.h (function_arg): Delete.
* config/pa/pa-protos.h (function_arg): Delete.
* config/pa/pa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/pa/pa.c (function_arg): Rename to...
(pa_function_arg): ...this. Make static. Take a const_tree and
a bool.
(pa_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165228
Nathan Froyd [Sat, 9 Oct 2010 14:20:08 +0000 (14:20 +0000)]
m68k.h (FUNCTION_ARG, [...]): Delete.
* config/m68k/m68k.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/m68k/m68k.c (m68k_function_arg): New function.
(m68k_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165227
Nathan Froyd [Sat, 9 Oct 2010 14:18:51 +0000 (14:18 +0000)]
avr-protos.h (function_arg): Delete.
* config/avr/avr-protos.h (function_arg): Delete.
(function_arg_advance): Delete.
* config/avr/avr.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/avr/avr.c (function_arg): Rename to...
(avr_function_arg): ...this. Make static. Take a const_tree and
a bool.
(function_arg_advance): Rename to...
(avr_function_arg_advance): ...this. Make static. Take a
const_tree and a bool.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165226
Nathan Froyd [Sat, 9 Oct 2010 14:17:48 +0000 (14:17 +0000)]
alpha-protos.h (function_arg): Delete.
* config/alpha/alpha-protos.h (function_arg): Delete.
* config/alpha/alpha.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/alpha/vms.h (FUNCTION_ARG_ADVANCE): Delete.
* config/alpha/alpha.c (function_arg): Rename to...
(alpha_function_arg): ...this. Make static. Take a const_tree and
a bool. Delete TARGET_ABI_UNICOSMK code.
(alpha_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165225
Nathan Froyd [Sat, 9 Oct 2010 14:16:42 +0000 (14:16 +0000)]
mep-protos.h (mep_function_arg): Delete.
* config/mep/mep-protos.h (mep_function_arg): Delete.
(mep_function_arg_advance): Delete.
* config/mep/mep.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/mep/mep.c (mep_function_arg): Make static. Take a
const_tree and a bool.
(mep_function_arg_advance): Likewise.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165224
Richard Guenther [Sat, 9 Oct 2010 12:45:09 +0000 (12:45 +0000)]
re PR tree-optimization/45945 (ICE: verify_ssa failed: error: SSA_NAME_DEF_STMT is wrong when using inline ASM with -flto/-fwhopr)
2010-10-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45945
* tree-ssa.c (execute_update_addresses_taken): Fixup LHS
scanning.
* gcc.dg/lto/
20101009-1_0.c: New testcase.
From-SVN: r165222
Eric Botcazou [Sat, 9 Oct 2010 12:15:31 +0000 (12:15 +0000)]
re PR tree-optimization/45612 (Reference to undefined label building libada on Solaris 2/SPARC)
PR tree-optimization/45612
* ipa-split.c (test_nonssa_use): Remove bogus ATTRIBUTE_UNUSED.
Test LABEL_DECLs as well. Fix formatting issues.
(verify_non_ssa_vars): Return false for a GIMPLE_LABEL statement
whose label is present in NON_SSA_VARS.
(mark_nonssa_use): Remove bogus ATTRIBUTE_UNUSED. Handle LABEL_DECLs
as well. Fix formatting issues.
(visit_bb): Fix typos and formatting issue.
From-SVN: r165221
Nathan Froyd [Sat, 9 Oct 2010 11:44:00 +0000 (11:44 +0000)]
re PR tree-optimization/45950 (ICE segmentation fault compiling __udivdi3)
PR tree-optimization/45950
* tree-ssa-sccvn.c (init_vn_nary_op_from_pieces): Consult length
before initializing vno->op.
From-SVN: r165220
Eric Botcazou [Sat, 9 Oct 2010 11:33:18 +0000 (11:33 +0000)]
Fix more long lines
From-SVN: r165219
Eric Botcazou [Sat, 9 Oct 2010 10:16:19 +0000 (10:16 +0000)]
Fix long lines
From-SVN: r165218
Ralf Corsepius [Sat, 9 Oct 2010 09:31:21 +0000 (11:31 +0200)]
config.gcc (bfin*-rtems*): Add newlib-stdint.h.
2010-10-09 Ralf Corsépius <ralf.corsepius@rtems.org>
* config.gcc (bfin*-rtems*): Add newlib-stdint.h.
* config.gcc (lm32*-rtems*): Add newlib-stdint.h.
From-SVN: r165216
H.J. Lu [Sat, 9 Oct 2010 05:34:10 +0000 (05:34 +0000)]
Support "andhi/andsi/anddi" as a zero-extending move.
gcc/
2010-10-08 H.J. Lu <hongjiu.lu@intel.com>
PR target/45913
* config/i386/i386.c (ix86_binary_operator_ok): Support
"andhi/andsi/anddi" as a zero-extending move.
gcc/testsuite/
2010-10-08 H.J. Lu <hongjiu.lu@intel.com>
PR target/45913
* gcc.target/i386/pr45913.c: New.
From-SVN: r165215
H.J. Lu [Sat, 9 Oct 2010 05:06:21 +0000 (05:06 +0000)]
Add AC_CANONICAL_SYSTEM to configure.ac.
2010-10-08 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/45951
* configure.ac: Add AC_CANONICAL_SYSTEM.
* configure: Regenerated.
From-SVN: r165214
Nathan Froyd [Sat, 9 Oct 2010 00:44:46 +0000 (00:44 +0000)]
builtins.c (fold_call_stmt): Don't copy gimple call arguments into a temporary array.
* builtins.c (fold_call_stmt): Don't copy gimple call arguments
into a temporary array.
From-SVN: r165213
GCC Administrator [Sat, 9 Oct 2010 00:17:19 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r165212
Jerry DeLisle [Fri, 8 Oct 2010 22:28:49 +0000 (22:28 +0000)]
re PR fortran/45943 (gfortran.dg/streamio_16.f90: Fails under MinGW64 - probably \r\n vs \n issue)
2010-10-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/45943
* gfortran.dg/streamio_16.f90: Update test.
From-SVN: r165208
Jakub Jelinek [Fri, 8 Oct 2010 20:49:44 +0000 (22:49 +0200)]
re PR rtl-optimization/45903 (unnecessary load of 32/64bit variable when only 8 bits are needed)
PR tree-optimization/45903
* simplify-rtx.c (simplify_subreg): Optimize lowpart SUBREG
of *SHIFTRT of MEM.
* gcc.target/i386/pr45903.c: New test.
From-SVN: r165202
Jakub Jelinek [Fri, 8 Oct 2010 20:49:19 +0000 (22:49 +0200)]
re PR rtl-optimization/45903 (unnecessary load of 32/64bit variable when only 8 bits are needed)
PR tree-optimization/45903
* simplify-rtx.c (simplify_subreg): Optimize lowpart SUBREG
of *SHIFTRT of MEM.
* gcc.target/i386/pr45903.c: New test.
From-SVN: r165200
Paolo Carlini [Fri, 8 Oct 2010 20:30:44 +0000 (20:30 +0000)]
future (_Result_alloc): Derive from _Alloc, exploit the Empty Base Optimization.
2010-10-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/future (_Result_alloc): Derive from _Alloc,
exploit the Empty Base Optimization.
From-SVN: r165194
Richard Guenther [Fri, 8 Oct 2010 15:21:29 +0000 (15:21 +0000)]
lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers): Re-construct BLOCK_VARS.
2010-10-08 Richard Guenther <rguenther@suse.de>
* lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
Re-construct BLOCK_VARS.
(lto_input_ts_block_tree_pointers): Do not stream BLOCK_VARS.
* lto-streamer-out.c (lto_output_ts_block_tree_pointers): Likewise.
* tree.c (free_lang_data_in_block): Remove.
(free_lang_data_in_decl): Do not touch DECL_CONTEXT of non-PARM_DECLs.
Do not touch the BLOCK tree.
* expr.c (expand_expr_real_1): Allow externals.
From-SVN: r165191
Richard Guenther [Fri, 8 Oct 2010 15:20:13 +0000 (15:20 +0000)]
lto-streamer-out.c (lto_output_ts_block_tree_pointers): Do not output BLOCK_SUBBLOCKS.
2010-10-08 Richard Guenther <rguenther@suse.de>
* lto-streamer-out.c (lto_output_ts_block_tree_pointers):
Do not output BLOCK_SUBBLOCKS.
* lto-streamer-in.c (lto_input_ts_block_tree_pointers):
Reserve exact space needed for BLOCK_NONLOCALIZED_VARS.
Re-construct BLOCK_SUBBLOCKS of parent block.
(lto_input_ts_binfo_tree_pointers): Reserve exact space needed
for BINFO_BASE_ACCESSES.
From-SVN: r165190
Joseph Myers [Fri, 8 Oct 2010 15:17:32 +0000 (16:17 +0100)]
Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h.
* Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h.
(TREE_H): Include $(FLAGS_H) instead of options.h.
(opts-common.o): Depend on $(FLAGS_H) instead of options.h.
* c-objc-common.h (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
* common.opt (flag_complex_method, flag_evaluation_order,
flag_ira_algorithm, flag_ira_region, flag_warn_unused_result): New
Variable declarations.
* configure.ac (tm_include_list): Include flags.h instead of
options.h.
* configure: Regenerate.
* flags.h: Condition out contents for target libraries. Include
options.h at end of file.
(flag_complex_method, flag_ira_algorithm, flag_ira_region,
flag_evaluation_order, flag_warn_unused_result): Remove.
* gcc.c (main): Intialize global_options with global_options_init.
* langhooks-def.h (lhd_init_options_struct): Declare.
(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
(LANG_HOOKS_INITIALIZER): Include LANG_HOOKS_INIT_OPTIONS_STRUCT.
* langhooks.c (lhd_init_options_struct): New.
* langhooks.h (struct lang_hooks): Add init_options_struct.
Update comment on init_options.
* optc-gen.awk: Generate initializer for global_options_init, not
global_options.
* opth-gen.awk: Condition out structure declarations for target
libraries. Declare global_options_init.
* opts-common.c: Include flags.h instead of options.h.
* opts.c (flag_warn_unused_result): Remove.
(read_cmdline_options): Take gcc_options parameters. Pass them to
read_cmdline_option.
(initial_lang_mask, initial_min_crossjump_insns,
initial_max_fields_for_field_sensitive,
initial_loop_invariant_max_bbs_in_loop): Define at file scope.
(init_options_once): New. Split out of decode_options.
(init_options_struct): New. Split out of decode_options.
(decode_cmdline_options_to_array_default_mask): New.
(default_options_optimization): New. Split out of decode_options.
(decode_options): Move most code to other functions. Update call
to read_cmdline_options.
(finish_options): New. Split out of decode_options.
* opts.h (decode_options): Add gcc_options parameters.
(init_options_once, init_options_struct,
decode_cmdline_options_to_array_default_mask): New.
* toplev.c (flag_complex_method, flag_ira_algorithm,
flag_ira_region, flag_evaluation_order): Remove.
(general_init): Use global_options_init for initial flag values
for global_dc.
(toplev_main): Call init_options_once, init_options_struct,
lang_hooks.init_options_struct,
decode_cmdline_options_to_array_default_mask and
lang_hooks.init_option before decode_options. Update arguments to
decode_options.
* tree.h: Include flags.h instead of options.h.
ada:
* gcc-interface/misc.c (gnat_init_options_struct): New. Split out
from gnat_init_options.
(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
c-family:
* c-common.c (parse_optimize_options): Call
decode_cmdline_options_to_array_default_mask before
decode_options. Update arguments to decode_options.
* c-common.h (c_common_init_options_struct): Declare.
* c-opts.c (c_common_init_options_struct): New. Split out from
c_common_init_options.
cp:
* cp-objcp-common.h (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
fortran:
* f95-lang.c (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
* gfortran.h (gfc_init_options_struct): Declare.
* options.c (gfc_init_options_struct): New. Split out from
gfc_init_options.
java:
* lang.c (java_init_options_struct): New. Split out from
java_init_options.
(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
lto:
* lto-lang.c (lto_init_options): Change to
lto_init_options_struct. Update parameters.
(LANG_HOOKS_INIT_OPTIONS): Don't define.
(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
From-SVN: r165189
Arnaud Charlet [Fri, 8 Oct 2010 14:32:54 +0000 (14:32 +0000)]
* gnat.dg/interface5.adb: Compile with warnings disabled.
From-SVN: r165186
Nathan Froyd [Fri, 8 Oct 2010 13:41:54 +0000 (13:41 +0000)]
* config/rx/rx.c (TARGET_EXCEPT_UNWIND_INFO): Define.
From-SVN: r165184
Nathan Froyd [Fri, 8 Oct 2010 13:29:29 +0000 (13:29 +0000)]
sparc-protos.h (function_arg_advance, [...]): Delete.
* config/sparc/sparc-protos.h (function_arg_advance, function-arg):
Delete.
* config/sparc/sparc.h (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Delete.
(FUNCTION_INCOMING_ARG): Delete.
* config/sparc/sparc.c (scan_record_type): Const-ify tree argument.
(function_arg_slotno): Likewise. Take bool arguments.
(sparc_arg_partial_bytes): Update call to it.
(function_arg): Rename to...
(sparc_function_arg_1): ...this. Take bool arguments.
(sparc_function_arg, sparc_function_incoming_arg): New functions.
(function_arg_advance): Rename to...
(sparc_function_arg_advance): ...this. Take bool argument.
(TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG): Define.
(TARGET_FUNCTION_INCOMING_ARG): Define.
From-SVN: r165183
Nathan Froyd [Fri, 8 Oct 2010 13:22:00 +0000 (13:22 +0000)]
bfin-protos.h (function_arg, [...]): Delete.
* config/bfin/bfin-protos.h (function_arg, function_arg_advance):
Delete.
* config/bfin/bfin.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/bfin/bfin.c (function_arg_advance): Rename to...
(bfin_function_arg_advance): ...this. Make static. Take const_tree
and bool arguments.
(function_arg): Rename to...
(bfin_function_arg): ...this. Make static. Take const_tree and bool
arguments.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165182
Nathan Froyd [Fri, 8 Oct 2010 13:20:07 +0000 (13:20 +0000)]
score-protos.h (score_function_arg): Delete.
* config/score/score-protos.h (score_function_arg): Delete.
(score_function_arg_advance): Delete.
* config/score/score3.h (score3_function_arg_advance): Take a
const_tree and a bool.
(score3_function_arg): Likewise.
* config/score/score7.h (score7_function_arg_advance): Likewise.
(score7_function_arg): Likewise.
* config/score/score3.c (score3_classify_arg): Likewise.
(score3_function_arg_advance, score3_function_arg): Likewise.
* config/score/score7.c (score7_classify_arg): Likewise.
(score7_function_arg_advance, score7_function_arg): Likewise.
* config/score/score.c (score_function_arg_advance): Likewise.
(score_function_arg): Likewise. De-const-ify `cum' argument.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165181
Nathan Froyd [Fri, 8 Oct 2010 13:18:51 +0000 (13:18 +0000)]
s390-protos.h (s390_function_arg_advance): Delete.
* config/s390/s390-protos.h (s390_function_arg_advance): Delete.
(s390_function_arg): Delete.
* config/s390/s390.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/s390/s390.c (s390_function_arg_float): Take a const_tree.
(s390_function_arg_integer): Likewise.
(s390_function_arg_advance): Make static. Take a const_tree and
a bool.
(s390_function_arg): Likewise.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165180
Nathan Froyd [Fri, 8 Oct 2010 13:16:43 +0000 (13:16 +0000)]
spu-protos.h (spu_function_arg): Delete.
* config/spu/spu-protos.h (spu_function_arg): Delete.
* config/spu/spu.h (FUNCTION_ARG): Delete.
(FUNCTION_ARG_ADVANCE): Move code to ...
* config/spu/spu.c (spu_function_arg_advance): New function.
(spu_function_arg): Make static. Take a const_tree and a bool.
(spu_setup_incoming_varargs): Call spu_function_arg_advance.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165179
Nathan Froyd [Fri, 8 Oct 2010 13:10:47 +0000 (13:10 +0000)]
tree-ssa-sccvn.c (init_vn_nary_op_from_pieces): New function.
* tree-ssa-sccvn.c (init_vn_nary_op_from_pieces): New function.
(init_vn_nary_op_from_op): New function.
(init_vn_nary_op_from_stmt): New function.
(vn_nary_op_lookup_1): New function.
(sizeof_vn_nary_op): New function.
(alloc_vn_nary_op_noinit): New function.
(alloc_vn_nary_op): New function.
(vn_nary_op_insert_into): New function.
(vn_nary_op_lookup_pieces): Rewrite to use new helper functions.
(vn_nary_op_lookup): Likewise.
(vn_nary_op_lookup_stmt): Likewise.
(vn_nary_op_insert_pieces): Likewise.
(vn_nary_op_insert): Likewise.
(vn_nary_op_insert_stmt): Likewise.
(copy_nary): Likewise.
(set_value_id_for_result): New function.
(set_hashtable_value_ids): Call it.
From-SVN: r165178
Arnaud Charlet [Fri, 8 Oct 2010 13:10:27 +0000 (15:10 +0200)]
[multiple changes]
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_aux.adb: Cleanup Is_Immutably_Limited_Type.
2010-10-08 Robert Dewar <dewar@adacore.com>
* exp_ch3.adb: Minor reformatting.
* exp_ch5.adb: Add comment.
From-SVN: r165177
Tejas Belagod [Fri, 8 Oct 2010 13:08:24 +0000 (14:08 +0100)]
Add PR buzilla numbers to ChangeLog
From-SVN: r165176
Arnaud Charlet [Fri, 8 Oct 2010 13:08:03 +0000 (15:08 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Check_Duplicate_Pragma): Check for entity match
* gcc-interface/Make-lang.in: Update dependencies.
* einfo.ads: Minor reformatting.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb, sem_ch3.adb, exp_ch7.adb, exp_util.adb, sem_aux.adb,
sem_aux.ads, exp_ch4.adb, exp_ch6.adb, sem_ch6.adb, exp_aggr.adb,
exp_ch3.adb: Change Is_Inherently_Limited_Type to
Is_Immutably_Limited_Type to accord with new RM terminology.
* sem_aux.adb (Is_Immutably_Limited_Type): A type that is a descendant
of a formal limited private type is not immutably limited in a generic
body.
From-SVN: r165175
Arnaud Charlet [Fri, 8 Oct 2010 13:02:55 +0000 (15:02 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Check_Duplicate_Pragma): New procedure
Add calls to this new procedure where appropriate
2010-10-08 Vincent Celier <celier@adacore.com>
* a-textio.adb (Get_Chunk): Code clean up.
2010-10-08 Robert Dewar <dewar@adacore.com>
* a-strbou.ads, a-strfix.adb, a-strfix.ads, a-strsea.adb, a-strsea.ads,
a-strsup.adb, a-strsup.ads, a-strunb-shared.adb, a-strunb-shared.ads,
a-strunb.adb, a-strunb.ads, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
a-stwise.adb, a-stwise.ads, a-stwisu.adb, a-stwisu.ads,
a-stwiun-shared.adb, a-stwiun-shared.ads, a-stwiun.adb, a-stwiun.ads,
a-stzbou.ads, a-stzfix.adb, a-stzfix.ads, a-stzsea.adb, a-stzsea.ads,
a-stzsup.adb, a-stzsup.ads, a-stzunb-shared.adb, a-stzunb-shared.ads,
a-stzunb.adb, a-stzunb.ads (Find_Token): New version with From
parameter.
From-SVN: r165174
Nathan Froyd [Fri, 8 Oct 2010 13:01:54 +0000 (13:01 +0000)]
fr30.c (TARGET_EXCEPT_UNWIND_INFO): Define.
* config/fr30/fr30.c (TARGET_EXCEPT_UNWIND_INFO): Define.
* config/fr30/fr30.md (leave_func): Rewrite without post_inc.
From-SVN: r165173
Robert Dewar [Fri, 8 Oct 2010 12:57:10 +0000 (12:57 +0000)]
sem_cat.adb (Check_Categorization_Dependencies): Remote types packages can depend on preleborated packages.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_cat.adb (Check_Categorization_Dependencies): Remote types
packages can depend on preleborated packages.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Check_Interrupt_Or_Attach_Handler): Pragmas
Interrupt_Handler and Attach_Handler not allowed in generics.
From-SVN: r165172
Robert Dewar [Fri, 8 Oct 2010 12:54:03 +0000 (12:54 +0000)]
ali.adb: Set Allocator_In_Body if AB parameter present on M line
2010-10-08 Robert Dewar <dewar@adacore.com>
* ali.adb: Set Allocator_In_Body if AB parameter present on M line
* ali.ads (Allocator_In_Body): New flag
* bcheck.adb (Check_Consistent_Restrictions): Handle case of main
program violating No_Allocators_After_Elaboration restriction.
* gnatbind.adb (No_Restriction_List): Add entries for
No_Anonymous_Allocators, and No_Allocators_After_Elaboration.
* lib-load.adb: Initialize Has_Allocator flag
* lib-writ.adb: Initialize Has_Allocator flag
(M_Parameters): Set AB switch if Has_Allocator flag set
* lib-writ.ads: Document AB flag on M line
* lib.adb (Has_Allocator): New function
(Set_Has_Allocator): New procedure
* lib.ads (Has_Allocator): New function
(Set_Has_Allocator): New procedure
(Has_Allocator): New flag in Unit_Record
* sem_ch4.adb (Analyze_Allocator): Add processing for
No_Allocators_After_Elaboration.
From-SVN: r165171
Arnaud Charlet [Fri, 8 Oct 2010 12:49:46 +0000 (14:49 +0200)]
[multiple changes]
2010-10-08 Geert Bosch <bosch@adacore.com>
* a-textio.adb (Get_Line): Rewrite to use fgets instead of fgetc.
2010-10-08 Javier Miranda <miranda@adacore.com>
* sem_prag.adb (Analyze_Pragma): Relax semantic rule of
Java_Constructors because in the JRE library we generate occurrences
in which the "this" parameter is not the first formal.
From-SVN: r165170
Arnaud Charlet [Fri, 8 Oct 2010 12:40:25 +0000 (14:40 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* par-ch3.adb: Minor reformatting.
2010-10-08 Javier Miranda <miranda@adacore.com>
* exp_disp.adb (Make_DT): Do not generate dispatch tables for CIL/Java
types.
2010-10-08 Robert Dewar <dewar@adacore.com>
* par-ch8.adb (P_Use_Type_Clause): Recognize ALL keyword in Ada 2012
mode.
* sinfo.adb (Use_Type_Clause): Add All_Present flag.
* sinfo.ads (Use_Type_Clause): Add All_Present flag.
* s-rident.ads: Add entry for No_Allocators_After_Elaboration,
No_Anonymous_Allocators.
2010-10-08 Vincent Celier <celier@adacore.com>
* bindgen.adb (Gen_Restrictions_Ada): No new line after last
restriction, so that the last comma is always replaced with a left
parenthesis.
2010-10-08 Javier Miranda <miranda@adacore.com>
* sem_prag.adb (Analyze_Pragma): Add specific check on the type of the
first formal of delegates.
From-SVN: r165169
Robert Dewar [Fri, 8 Oct 2010 12:34:08 +0000 (12:34 +0000)]
sem_aggr.adb: Minor reformatting.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_aggr.adb: Minor reformatting.
2010-10-08 Robert Dewar <dewar@adacore.com>
* exp_imgv.adb (Expand_Image_Attribute): Handle special calling
sequence for soft hyphen for Character'Image case.
* rtsfind.ads (Image_Character_05): New entry
* s-imgcha.adb (Image_Character_05): New procedurew
* s-imgcha.ads (Image_Character_05): New procedure
* s-imgwch.adb (Image_Wide_Character): Deal with Ada 2005 soft hyphen
case.
* s-valcha.adb (Value_Character): Recognize SOFT_HYPHEN for 16#AD#
* sem_attr.adb (Eval_Attribute, case Width): Handle soft_hyphen name
properly.
From-SVN: r165168
Javier Miranda [Fri, 8 Oct 2010 12:30:52 +0000 (14:30 +0200)]
sem_prag.adb (Analyze_Pragma): Add missing checks on wrong use of pragmas CIL_Constructor and Java_Constructor.
* sem_prag.adb (Analyze_Pragma): Add missing checks on wrong use of
pragmas CIL_Constructor and Java_Constructor.
From-SVN: r165167
Robert Dewar [Fri, 8 Oct 2010 12:30:30 +0000 (12:30 +0000)]
sem_attr.adb (Eval_Attribute, case Width): Avoid ludicrous long loop for case of Wide_[Wide_]Character.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_attr.adb (Eval_Attribute, case Width): Avoid ludicrous long loop
for case of Wide_[Wide_]Character.
2010-10-08 Robert Dewar <dewar@adacore.com>
* exp_ch3.adb: Minor reformating
Minor code reorganization.
From-SVN: r165166
Javier Miranda [Fri, 8 Oct 2010 12:27:41 +0000 (14:27 +0200)]
sem_prag.adb (Analyze_Pragma): Add missing checks on wrong use of pragmas CIL_Constructor and Java_Constructor.
2010-10-08 Javier Miranda <miranda@adacore.com>
* sem_prag.adb (Analyze_Pragma): Add missing checks on wrong use of
pragmas CIL_Constructor and Java_Constructor.
* exp_ch3.adb (Expand_Freeze_Record_Type): Do not generate the
predefined primitives for CIL/Java tagged types.
From-SVN: r165165
Jonathan Wakely [Fri, 8 Oct 2010 11:31:56 +0000 (11:31 +0000)]
re PR libstdc++/45403 (python pretty printer for std::string requires GDB 7.1)
PR libstdc++/45403
* python/libstdcxx/v6/printers.py: Check for lazy_string support.
From-SVN: r165163
Arnaud Charlet [Fri, 8 Oct 2010 10:51:09 +0000 (12:51 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb: Minor reformatting.
2010-10-08 Robert Dewar <dewar@adacore.com>
* gnat1drv.adb: Add call to Validate_Independence.
* par-prag.adb: Add dummy entries for Independent,
Independent_Componentsa.
* sem_ch13.adb (Validate_Independence): New procedure
(Initialize): Initialize address clause and independence check tables
* sem_ch13.ads (Independence_Checks): New table
(Validate_Independence): New procedure
* sem_prag.adb: Add processing for pragma Independent[_Components]
* snames.ads-tmpl: Add entries for pragma Independent[_Components]
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb (Propagate_Discriminants): When expanding an aggregate
component with box initialization, if the component is a variant record
use the values of the discriminants to select the proper variant for
further box initialization.
From-SVN: r165162
Nathan Froyd [Fri, 8 Oct 2010 10:46:38 +0000 (10:46 +0000)]
mcore.h (INCOMING_RETURN_ADDR_RTX): Define.
* config/mcore/mcore.h (INCOMING_RETURN_ADDR_RTX): Define.
* config/mcore/mcore.c (TARGET_EXCEPT_UNWIND_INFO): Define.
From-SVN: r165161
Arnaud Charlet [Fri, 8 Oct 2010 10:45:13 +0000 (12:45 +0200)]
[multiple changes]
2010-10-08 Thomas Quinot <quinot@adacore.com>
* xsnames.adb: Remove obsolete file.
* make.adb, sem_ch8.adb, einfo.ads: Minor reformatting.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb: Complete previous change.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Check_Return_Subtype): The subtype indication in an
extended return must match statically the return subtype of the
enclosing function if the type is an elementary type or if it is
constrained.
2010-10-08 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Add_Source): Report all duplicate units and source file
names. Do not report the same duplicate unit several times.
* prj.ads (Source_Data): New Boolean component Duplicate_Unit,
defaulted to False, to avoid reporting the same unit as duplicate
several times.
From-SVN: r165160
Arnaud Charlet [Fri, 8 Oct 2010 10:32:07 +0000 (12:32 +0200)]
[multiple changes]
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb (Resolve_Array_Aggregate): If the expression in an
others choice is a literal analyze it now to enable later optimizations.
* exp_aggr.adb (Expand_Record_Aggregate): An aggregate with static size
and components can be handled by the backend even if it is of a limited
type.
2010-10-08 Arnaud Charlet <charlet@adacore.com>
* a-rttiev.adb (task Timer): Since this package may be elaborated
before System.Interrupt, we need to call Setup_Interrupt_Mask
explicitly to ensure that this task has the proper signal mask.
2010-10-08 Robert Dewar <dewar@adacore.com>
* freeze.adb (Freeze_Entity): For array case, move some processing for
pragma Pack, Component_Size clause and atomic/volatile components here
instead of trying to do the job in Sem_Ch13 and Freeze.
* layout.adb: Use new Addressable function
* sem_ch13.adb (Analyze_Attribute_Representation_Clause, case
Component_Size): Move some handling to freeze point in
Freeze.Freeze_Entity.
* sem_prag.adb (Analyze_pragma, case Pack): Move some handling to
freeze point in Freese.Freeze_Entity.
* sem_util.ads, sem_util.adb (Addressable): New function.
From-SVN: r165159
Arnaud Charlet [Fri, 8 Oct 2010 10:25:23 +0000 (12:25 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sprint.adb: Minor reformatting.
2010-10-08 Javier Miranda <miranda@adacore.com>
* exp_ch4.adb (Real_Range_Check): Declare temporary as constant.
From-SVN: r165158
Arnaud Charlet [Fri, 8 Oct 2010 10:22:31 +0000 (12:22 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb: Minor reformatting.
2010-10-08 Vincent Celier <celier@adacore.com>
* ali-util.adb (Get_File_Checksum): Make sure that external_as_list is
not a reserved word.
* prj-proc.adb (Expression): Process string list external references.
* prj-strt.adb (External_Reference): Parse external_as_list external
references.
* prj-tree.ads (Expression_Kind_Of): Allowed for N_External_Value nodes
(Set_Expression_Kind_Of): Ditto
* prj.adb (Initialize): Set external_as_list as a reserved word
* projects.texi: Document new string external reference external_as_list
* scans.ads (Token_Type): New token Tok_External_As_List
* snames.ads-tmpl: New standard name Name_External_As_List
From-SVN: r165157
Arnaud Charlet [Fri, 8 Oct 2010 10:17:10 +0000 (12:17 +0200)]
[multiple changes]
2010-10-08 Thomas Quinot <quinot@adacore.com>
* sem_prag.adb: Minor reformatting.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Derived_Type_Declaration): In the private part of an
instance, it is legal to derive from a non-limited actual when the
formal type is untagged limited.
* sem_ch12.adb (Instantiate_Type): For a formal private type, use
analyzed formal as Generic_Parent_Type, to simplify later checks.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Insert_Default): If default value is already a
raise_constraint_error do not rewrite it as new raise node, to prevent
infinite loops in the warning removal machinery.
From-SVN: r165156
Arnaud Charlet [Fri, 8 Oct 2010 10:13:14 +0000 (12:13 +0200)]
[multiple changes]
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_util.adb, sem_prag.adb: Minor reformatting
2010-10-08 Hristian Kirtchev <kirtchev@adacore.com>
* gnat_rm.texi: Remove the section on pragma Implemented_By_Entry.
Add section on pragma Implemented.
2010-10-08 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Derive_Subprogram): If an abstract extension has a
concrete parent with a concrete constructor, the inherited constructor
is abstract even if the derived type is a null extension.
From-SVN: r165155
Arnaud Charlet [Fri, 8 Oct 2010 10:04:58 +0000 (12:04 +0200)]
[multiple changes]
2010-10-08 Thomas Quinot <quinot@adacore.com>
* sem_ch4.adb: Minor reformatting.
2010-10-08 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb: Flag 232 (formerly Implemented_By_Entry) is now unused.
(Implemented_By_Entry): Removed.
(Set_Implemented_By_Entry): Removed.
(Write_Entity_Flags): Remove the output for Implemented_By_Entry.
* einfo.ads: Remove flag Implemented_By_Entry and its usage in entities.
(Implemented_By_Entry): Removed along with its associated pragma Inline.
(Set_Implemented_By_Entry): Removed along with its associated pragma
Inline.
* exp_ch9.adb: Alphabetize with and use clauses of Exp_Ch9.
(Build_Dispatching_Call_Equivalent): New routine.
(Build_Dispatching_Requeue): New routine.
(Build_Dispatching_Requeue_To_Any): New routine.
(Build_Normal_Requeue): New routine.
(Build_Skip_Statement): New routine.
(Expand_N_Requeue_Statement): Rewritten. The logic has been split into
several subroutines.
* par-prag.adb: Replace Pragma_Implemented_By_Entry by
Pragma_Implemented.
* sem_ch3.adb (Check_Abstract_Overriding): Perform checks concerning
pragma Implemented.
(Check_Pragma_Implemented): New routines.
(Inherit_Pragma_Implemented): New routine.
* sem_ch9.adb (Analyze_Requeue): Update the predicate which detects a
dispatching requeue.
* sem_prag.adb: Update array Sig_Flags by removing Implemented_By_Entry
and adding Implemented.
(Ada_2012_Pragma): New routine.
(Analyze_Pragma, case Implemented): Perform all necessary checks
concerning pragma Implemented and register the pragma as a
representation item with the procedure_LOCAL_NAME.
(Analyze_Pragma, case Implemented_By_Entry): Removed.
* sem_util.adb (Implementation_Kind): New routine.
* sem_util.ads (Implementation_Kind): New routine.
* snames.ads-tmpl: Remove Name_Implemented_By_Entry and add
Name_Implemented. Remove pragma name Pragma_Implemented_By_Entry and
add Pragma_Implemented. Add special names By_Any, By_Entry and
By_Protected_Procedure.
2010-10-08 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb (Expand_Freeeze_Record_Type): Code cleanup: remove local
variable Has_Static_DT by invocation of function Building_Static_DT.
2010-10-08 Vincent Celier <celier@adacore.com>
* g-dirope.adb (Remove_Dir): Do not change the current directory when
doing a recursive remove of a subdirectory.
2010-10-08 Javier Miranda <miranda@adacore.com>
* exp_ch6.ad (Freeze_Subprogram): Factorize code.
* exp_disp.adb (Make_Secondary_DT): Factorize code.
(Make_DT): Factorize code.
From-SVN: r165154
Robert Dewar [Fri, 8 Oct 2010 09:46:51 +0000 (09:46 +0000)]
sem_ch4.adb: Minor reformatting.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_ch4.adb: Minor reformatting.
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Check_Conformance): Check null exclusion match for full
conformance.
From-SVN: r165153
Arnaud Charlet [Fri, 8 Oct 2010 09:40:32 +0000 (11:40 +0200)]
[multiple changes]
2010-10-08 Thomas Quinot <quinot@adacore.com>
* sem_ch12.adb (Instantiate_Object): Rename Formal_Id to Gen_Obj, for
consistency with Gen_T in Instantiate_Type.
Introduce constant A_Gen_Obj to avoid repeated queries for
Defining_Identifier (Analyzed_Formal).
2010-10-08 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb: Minor comment fix.
From-SVN: r165152
Paolo Carlini [Fri, 8 Oct 2010 09:22:16 +0000 (09:22 +0000)]
future (uses_allocator<packaged_task<>,>): Add; minor formatting tweaks.
2010-10-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/future (uses_allocator<packaged_task<>,>): Add;
minor formatting tweaks.
From-SVN: r165151
Alexandre Oliva [Fri, 8 Oct 2010 04:41:14 +0000 (04:41 +0000)]
re PR debug/45656 (gfortran.dg/forall_4.f90 -O3, wrong code with -g)
PR debug/45656
* cse.c (cse_extended_basic_block): Preserve cc0 info across
debug isnsn. Skip them when searching for cc0 setter.
(set_live_p): Skip debug insns when searching for cc0 user.
From-SVN: r165150
Alexandre Oliva [Fri, 8 Oct 2010 04:40:59 +0000 (04:40 +0000)]
re PR debug/45673 (-fcompare-debug failure with minor difference in dumps)
PR debug/45673
PR debug/45604
PR debug/45419
PR debug/45408
* tree-pretty-print.c (dump_generic_node): Explicitly dump the
type of MEM_REFs to INTEGER_CSTs.
From-SVN: r165149
Nathan Froyd [Fri, 8 Oct 2010 01:47:33 +0000 (01:47 +0000)]
m68hc11.c (m68hc11_print_operand): Call m68hc11_print_operand_address.
* config/m68hc11/m68hc11.c (m68hc11_print_operand): Call
m68hc11_print_operand_address.
From-SVN: r165148
Jonathan Wakely [Fri, 8 Oct 2010 01:06:27 +0000 (01:06 +0000)]
future: Enable allocator support.
* include/std/future: Enable allocator support.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Expect PASS.
* testsuite/30_threads/promise/cons/alloc.cc: Expect PASS.
From-SVN: r165147
Nathan Froyd [Fri, 8 Oct 2010 01:06:14 +0000 (01:06 +0000)]
builtins.c (rewrite_call_expr): Move code to...
* builtins.c (rewrite_call_expr): Move code to...
(rewrite_call_expr_valist): ...here. Call
build_call_expr_loc_array.
(rewrite_call_expr_array): New function.
(fold_builtin_sprintf_chk_1): New function.
(fold_builtin_sprintf_chk): Call it.
(gimple_fold_builtin_sprintf_chk): Likewise.
(fold_builtin_snprintf_chk_1): New function.
(fold_builtin_snprintf_chk): Call it.
(gimple_fold_builtin_snprintf_chk): Likewise.
(gimple_rewrite_call_expr): Delete.
From-SVN: r165146
Jan Hubicka [Fri, 8 Oct 2010 00:50:24 +0000 (02:50 +0200)]
* lto.c (lto_balanced_map): Fix accounting of program size.
From-SVN: r165145
Jonathan Wakely [Fri, 8 Oct 2010 00:44:12 +0000 (00:44 +0000)]
re PR libstdc++/45893 ([C++0x] [DR 817] Finish updating std::bind to rvalue refs)
2010-10-08 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/45893
* include/std/functional (bind): Implement DR 817 and add support
for volatile-qualified call wrappers.
* include/std/mutex (call_once): Implement DR 891.
* include/std/thread (thread::thread): Implement DR 929.
* include/std/future: Optimise use of std::bind.
* testsuite/20_util/bind/cv_quals.cc: Test volatile-qualification.
* testsuite/20_util/bind/move.cc: New.
From-SVN: r165144
GCC Administrator [Fri, 8 Oct 2010 00:18:56 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r165142
Nicola Pero [Thu, 7 Oct 2010 22:34:50 +0000 (22:34 +0000)]
In gcc/testsuite/: 2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
* obj-c++.dg/encode-10.mm: New testcase.
In gcc/cp/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
* cp-tree.def: Changed type of AT_ENCODE_EXPR from tcc_unary to
tcc_expression.
* cxx-pretty-print.c (pp_cxx_unary_expression): Added case for
AT_ENCODE_EXPR.
* error.c (dump_expr): Added case for AT_ENCODE_EXPR.
* pt.c (tsubst_copy): Added case for AT_ENCODE_EXPR.
(value_dependent_expression_p): Added case for AT_ENCODE_EXPR.
(type_dependent_expression_p): Added case for AT_ENCODE_EXPR.
* parser.c (cp_parser_objc_encode_expression): Updated comment.
From-SVN: r165138
Nicola Pero [Thu, 7 Oct 2010 22:26:43 +0000 (22:26 +0000)]
In gcc/testsuite/: 2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/23614
* obj-c++.dg/lookup-2.mm: Do not assign 'nil' to a pointer to a
C++ class. Removed XFAIL.
From-SVN: r165137
Hans-Peter Nilsson [Thu, 7 Oct 2010 21:46:51 +0000 (21:46 +0000)]
re PR libstdc++/45841 (r164529 cris-elf libstdc++ 27_io/basic_filebuf/seekoff/char/2-io.cc)
PR libstdc++/45841
* testsuite/lib/libstdc++.exp (check_v3_target_fileio): Rewrite to
use an actual testsuite file and machinery, not ".". Specifically
check that incorrectly seeking backwards from 0 yields an error,
and that reading, seeking backwards and reading again works.
From-SVN: r165136
Hans-Peter Nilsson [Thu, 7 Oct 2010 21:44:36 +0000 (21:44 +0000)]
conformance.exp: Apply check_v3_target_fileio as a gate for tests in subdirectories matching the...
* testsuite/libstdc++-dg/conformance.exp: Apply
check_v3_target_fileio as a gate for tests in
subdirectories matching the substring _filebuf.
From-SVN: r165135
Dave Korn [Thu, 7 Oct 2010 21:04:47 +0000 (21:04 +0000)]
config.host: Update copyright year.
* config.host: Update copyright year.
From-SVN: r165134
Dave Korn [Thu, 7 Oct 2010 20:28:59 +0000 (20:28 +0000)]
configure.ac (build_lto_plugin): New shell variable.
ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* configure.ac (build_lto_plugin): New shell variable.
(--enable-lto): Turn on by default for all non-ELF platforms that
have had LTO support added so far. Set build_lto_plugin appropriately
for both ELF and non-ELF.
(configdirs): Add lto-plugin or not based on build_lto_plugin.
* configure: Regenerate.
gcc/ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* config.host (host_lto_plugin_soname): New shell variable.
* configure.ac (LTOPLUGINSONAME): Add an AC_DEFINE for the above.
* config.in: Regenerate.
* configure: Regenerate.
* gcc.c (main): Use LTOPLUGINSONAME instead of hard-coding name of
LTO plugin shared library.
lto-plugin/ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* configure.ac: Source config.gcc to determine lto_binary_reader.
(LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
* Makefile.am (LTO_FORMAT): Import.
(liblto_plugin_la_SOURCES): Add object format dependent module
defined by LTO_FORMAT.
(liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
and work around libtool warning.
* configure: Regenerate.
* Makefile.in: Likewise.
* lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
(struct sym_aux): Likewise.
(struct plugin_symtab): Likewise.
(struct plugin_file_info): Likewise.
(LTO_SECTION_PREFIX): Likewise.
(add_symbols): Make non-static.
(claimed_files): Likewise.
(num_claimed_files): Likewise.
(check): Likewise.
(parse_table_entry): Likewise.
(translate): Likewise.
(resolve_conflicts): Likewise.
(process_symtab): Move to new lto-plugin-elf.c object format dependent
source file.
(claim_file_handler): Likewise, and make non-static.
(onload): Call new onload_format_checks function.
* lto-plugin.h: New file.
(LTO_SECTION_PREFIX): Move here.
(struct sym_aux): Likewise.
(struct plugin_symtab): Likewise.
(struct plugin_file_info): Likewise.
(claim_file_handler): Add new function prototype.
(onload_format_checks): Likewise.
(check): Declare extern.
(translate): Likewise.
(parse_table_entry): Likewise.
(resolve_conflicts): Likewise.
(add_symbols): Likewise.
(claimed_files): Likewise.
(num_claimed_files): Likewise.
* lto-plugin-elf.c (process_symtab): Move here.
(claim_file_handler): Likewise, and make non-static.
(onload_format_checks): New function factored out from onload.
* lto-plugin-coff.c (claim_file_handler): New function stub.
(onload_format_checks): Likewise.
From-SVN: r165133
Richard Henderson [Thu, 7 Oct 2010 20:03:13 +0000 (13:03 -0700)]
Move enum unwind_info_type from target.h to coretypes.h.
From-SVN: r165131
Ralf Wildenhues [Thu, 7 Oct 2010 19:26:41 +0000 (19:26 +0000)]
Fixup botched sync of toplevel configure from src.
/:
Sync from src:
* configure.ac (v850 support): Remove target-libgloss from
noconfigdirs.
* configure: Regenerate.
From-SVN: r165130
Nicola Pero [Thu, 7 Oct 2010 18:37:43 +0000 (18:37 +0000)]
In gcc/: 2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
* doc/objc.texi (Fast enumeration protocol): Mention that
'unsigned int' can also be used instead of 'unsigned long' in
countByEnumeratingWithState:objects:count:.
In gcc/objc/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/45925
* objc-act.c (objc_finish_foreach_loop): Convert return value of
countByEnumeratingWithState:objects:count: to long unsigned int.
From-SVN: r165129
Janus Weil [Thu, 7 Oct 2010 17:35:18 +0000 (19:35 +0200)]
re PR fortran/45933 ([OOP] ICE in gfc_add_component_ref, at fortran/class.c:77)
2010-10-07 Janus Weil <janus@gcc.gnu.org>
PR fortran/45933
* resolve.c (resolve_typebound_function): Use correct declared type
for type-bound operators.
2010-10-07 Janus Weil <janus@gcc.gnu.org>
PR fortran/45933
* gfortran.dg/typebound_operator_5.f03: New.
From-SVN: r165126
Nicola Pero [Thu, 7 Oct 2010 17:17:22 +0000 (17:17 +0000)]
In gcc/cp/: 2010-10-07 Nicola Pero <nicola@nicola.brainstorm.co.uk>
In gcc/cp/:
2010-10-07 Nicola Pero <nicola@nicola.brainstorm.co.uk>
Merge from apple/trunk branch on FSF servers.
2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
Radar
4508851
* parser.c (cp_parser_objc_interstitial_code): Recognize
and parse RID_NAMESPACE keyword.
In gcc/testsuite/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
Radar
4508851
* obj-c++.dg/method-namespace-1.mm: New.
From-SVN: r165125
Martin Jambor [Thu, 7 Oct 2010 16:15:46 +0000 (18:15 +0200)]
tree-sra.c (struct access): New field grp_assignment_write.
2010-10-07 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): New field grp_assignment_write.
(dump_access): Dump grp_assignment_write.
(build_accesses_from_assign): Set grp_assignment_write.
(sort_and_splice_var_accesses): Aggregate grp_assignment_write.
(mark_read_status): Renamed to mark_rw_status, individual values
renamed too.
(analyze_access_subtree): Changed type of mark_write to
mark_read_status. Fixed propagating of mark_read and
mark_write. Changed benefit estimate. Updated comment.
* testsuite/gcc.dg/tree-ssa/sra-11.c: New test.
From-SVN: r165124
Tejas Belagod [Thu, 7 Oct 2010 16:07:21 +0000 (17:07 +0100)]
tree-vect-patterns.c (vect_recog_widen_mult_pattern): Add NULL check for vectype_out returned by get_vectype_for_scalar_type().
gcc/
2010-10-07 Tejas Belagod <tejas.belagod@arm.com>
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Add NULL
check for vectype_out returned by get_vectype_for_scalar_type().
testsuite/
2010-10-07 Tejas Belagod <tejas.belagod@arm.com>
* gcc.dg/vect/pr45847.c: New test.
From-SVN: r165123
Tejas Belagod [Thu, 7 Oct 2010 16:00:06 +0000 (17:00 +0100)]
re PR target/45805 (VFP/Neon double precision register expected -- `vmovl.s16 q2,s8)
2010-10-07 Tejas Belagod <tejas.belagod@arm.com>
PR target/45805
* config/arm/neon.md (neon_unpack<US>_<mode>): Add 'w' to
constraint, add register specifier in instruction template.
(neon_vec_pack_trunc_<mode>): Likewise.
(neon_vec_<US>mult_<mode>): Add register specifier to
instruction template.
From-SVN: r165122
Iain Sandoe [Thu, 7 Oct 2010 15:28:06 +0000 (15:28 +0000)]
fix for targets with different long and ptr sizes.
* objc.dg/proto-lossage-4.m: Use intptr_t instead of long type.
Co-Authored-By: Kai Tietz <kai.tietz@onevision.com>
From-SVN: r165121
Richard Guenther [Thu, 7 Oct 2010 15:00:18 +0000 (15:00 +0000)]
re PR tree-optimization/45732 (ICE: in bit_value_unop, at tree-ssa-ccp.c:1861 at -O1)
2010-10-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45732
* gcc.dg/torture/pr45732.c: New testcase.
From-SVN: r165120
Dave Korn [Thu, 7 Oct 2010 14:44:47 +0000 (14:44 +0000)]
config.gcc (c_target_objs): Don't add cygwin2.o.
* config.gcc (c_target_objs)[i?86-*-pe|i?86-*-cygwin*]: Don't add
cygwin2.o.
(cxx_target_objs)[i?86-*-pe|i?86-*-cygwin*]: Likewise.
(extra_gcc_objs)[i?86-*-pe|i?86-*-cygwin*]: Don't add cygwin1.o.
* config/i386/t-cygwin (cygwin1.o): Delete build rule.
(cygwin2.o): Likewise.
* config/i386/cygwin1.c: Delete file.
* config/i386/cygwin2.c: Likewise.
* config/i386/cygwin.h (CPP_SPEC): Remove all %{mno-cygwin} specs and
make all {%!mno-cygwin} ones unconditional.
(STARTFILE_SPEC): Likewise.
(REAL_LIBGCC_SPEC): Likewise.
(LIB_SPEC): Likewise.
(CXX_WRAP_SPEC): Likewise.
(LINK_SPEC): Likewise.
(CYGWIN_MINGW_SUBDIR): Delete now-unused macro definition.
(CYGWIN_MINGW_SUBDIR_LEN): Likewise.
(cygwin_gplusplus_include_dir): Delete now-unused array.
(GPLUSPLUS_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_gplusplus_tool_include_dir): Delete now-unused array.
(GPLUSPLUS_TOOL_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_gplusplus_backward_include_dir): Delete now-unused array.
(GPLUSPLUS_BACKWARD_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_local_include_dir): Delete now-unused array.
(LOCAL_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_cross_include_dir): Delete now-unused array.
(CROSS_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_tool_include_dir): Delete now-unused array.
(TOOL_INCLUDE_DIR): Don't redefine to point to it.
(cygwin_standard_include_dir): Delete now-unused array.
(STANDARD_INCLUDE_DIR): Don't redefine to point to it.
(GEN_CVT_ARRAY): Delete now-unused macro definition.
(cvt_to_mingw): Delete now-unused array.
(mingw_scan): Remove prototype of deleted function.
(GCC_DRIVER_HOST_INITIALIZATION): Don't define now-unused target macro.
* config/i386/cygming.opt (mcygwin): Delete target-specific option.
* doc/invoke.texi (-mcygwin): Don't document removed option.
(-mno-cygwin): Likewise.
From-SVN: r165119
Iain Sandoe [Thu, 7 Oct 2010 14:40:33 +0000 (14:40 +0000)]
foreach-1.m: Adjust for -fnext-runtime compatibility.
gcc/testsuite:
* objc.dg/foreach-1.m: Adjust for -fnext-runtime compatibility.
* objc.dg/foreach-2.m: Likewise.
* objc.dg/foreach-3.m: Likewise.
* objc.dg/foreach-4.m: Likewise.
* objc.dg/foreach-5.m: Likewise.
* objc.dg/foreach-6.m: Likewise.
* objc.dg/foreach-7.m: Likewise.
* objc.dg/objc-foreach-4.m: Likewise.
* objc.dg/objc-foreach-5.m: Likewise.
From-SVN: r165117
Richard Guenther [Thu, 7 Oct 2010 14:36:38 +0000 (14:36 +0000)]
machmode.h (mode_for_vector): Declare.
2010-10-07 Richard Guenther <rguenther@suse.de>
* machmode.h (mode_for_vector): Declare.
* stor-layout.c (mode_for_vector): New function, split out from ...
(layout_type): ... here.
* tree-vectorizer.h (current_vector_size): Declare.
* tree-vect-stmts.c (perm_mask_for_reverse): Check if the
mask vector type is available.
(get_vectype_for_scalar_type): Rename to ...
(get_vectype_for_scalar_type_and_size): ... this. Get a vector
size argument.
(get_vectype_for_scalar_type): New wrapper around
get_vectype_for_scalar_type_and_size using current_vector_size.
(get_same_sized_vectype): Use get_vectype_for_scalar_type_and_size.
* tree-vect-loop.c (vect_analyze_loop_2): Split out core part
of vect_analyze_loop here.
(vect_analyze_loop): Loop over vector sizes calling vect_analyze_loop_3.
* tree-vect-slp.c (vect_slp_analyze_bb): Set current_vector_size
to autodetect.
* config/i386/i386.c (ix86_vectorize_builtin_conversion): Fix
V8SF to V8SI conversion builtin.
From-SVN: r165116
Richard Guenther [Thu, 7 Oct 2010 14:35:38 +0000 (14:35 +0000)]
target.def (autovectorize_vector_sizes): New target hook.
2010-10-07 Richard Guenther <rguenther@suse.de>
* target.def (autovectorize_vector_sizes): New target hook.
* targhooks.c (default_autovectorize_vector_sizes): New function.
* targhooks.h (default_autovectorize_vector_sizes): Declare.
* doc/tm.texi.in (TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES):
Document.
* doc/tm.texi: Update.
* config/i386/i386.c (ix86_autovectorize_vector_sizes): New function.
(TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES): Define.
From-SVN: r165115
Richard Guenther [Thu, 7 Oct 2010 14:34:44 +0000 (14:34 +0000)]
target.def (units_per_simd_word): Rename to ...
2010-10-07 Richard Guenther <rguenther@suse.de>
* target.def (units_per_simd_word): Rename to ...
(preferred_simd_mode): ... this. Return mode instead of size.
* targhooks.c (default_units_per_simd_word): Rename to ...
(default_preferred_simd_mode): ... this. Return word_mode.
* targhooks.h (default_preferred_simd_mode): Declare.
* config/arm/arm.c (arm_units_per_simd_word): Rename to ...
(arm_preferred_simd_mode): ... this. Re-implement.
* config/i386/i386.c (ix86_units_per_simd_word): Rename to ...
(ix86_preferred_simd_mode): ... this. Re-implement.
* config/sparc/sparc.c (sparc_units_per_simd_word): Rename to ...
(sparc_preferred_simd_mode): ... this. Re-implement.
* config/mips/mips.c (mips_units_per_simd_word): Rename to ...
(mips_preferred_simd_mode): ... this. Re-implement.
* config/rs6000/rs6000.c (rs6000_units_per_simd_word): Rename to ...
(rs6000_preferred_simd_mode): ... this. Re-implement.
* tree-vect-stmts.c (get_vectype_for_scalar_type): Adjust.
* doc/tm.texi.in (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Remove.
(TARGET_VECTORIZE_PREFERRED_SIMD_MODE): Document.
* doc/tm.texi: Update.
From-SVN: r165114
Richard Guenther [Thu, 7 Oct 2010 14:32:20 +0000 (14:32 +0000)]
re PR middle-end/45869 (type mismatch in shift expression produces ice with -O3 and -m32)
2010-10-07 Richard Guenther <rguenther@suse.de>
PR middle-end/45869
* tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts
of pointers.
* gcc.dg/torture/pr45869.c: New testcase.
From-SVN: r165113
Iain Sandoe [Thu, 7 Oct 2010 14:22:27 +0000 (14:22 +0000)]
vec-ify ObjC* build_objc_method_call()
gcc/objc:
* objc-act.c (build_objc_method_call): Replace calls to
build_function_call () with the VEC equivalent. Construct parameter
lists as VECs.
From-SVN: r165112
Iain Sandoe [Thu, 7 Oct 2010 14:05:24 +0000 (14:05 +0000)]
do not emit bogus set-not-used warnings for objc* entities used as message receivers.
gcc/objc:
* objc-act.c (objc_build_message_expr): Call mark_exp_read () to signal that
the receiver has been used.
gcc/testsuite:
* objc.dg/set-not-used-1.m: New
* obj-c++.dg/set-not-used-1.mm: New.
From-SVN: r165111
Arnaud Charlet [Thu, 7 Oct 2010 13:59:38 +0000 (15:59 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_prag.adb, sem_ch13.adb: Implement AI05-0012-1/02.
* gcc-interface/Make-lang.in: Update dependencies.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.ad: (Instantiate_Object): For an in-out formal of a child
unit, if the type of the formal is declared in a parent unit and is not
a formal itself, the actual must be located from an enclosing parent
instance by normal visibility.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_Allocator): In Ada 2012, a null_exclusion
indicator is illegal for an uninitialized allocator.
From-SVN: r165110
Iain Sandoe [Thu, 7 Oct 2010 13:51:38 +0000 (13:51 +0000)]
fix cut & paste error in cp/parser and add testscases in case of fture error.
gcc/cp:
parser.c (cp_parser_objc_method_tail_params_opt): Peek new token after
finding ellipsis, before checking for attributes.
testsuite:
* objc.dg/attributes/method-attribute-3.m: New.
* obj-c++.dg/attributes/method-attribute-3.mm: New.
From-SVN: r165109
Arnaud Charlet [Thu, 7 Oct 2010 13:26:02 +0000 (15:26 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Analyze_Attribute_Definition_Clause, case
Component_Size): Complete previous change.
2010-10-07 Vincent Celier <celier@adacore.com>
* scng.adb (Scan): Call Accumulate_Token_Checksum for Tok_Identifier,
even for keywords, to avoid having the checksum to depend on the Ada
version.
2010-10-07 Gary Dismukes <dismukes@adacore.com>
* sem_aggr.adb, sem_ch12.adb, sem_ch6.adb, par-ch5.adb,
exp_ch3.adb: Minor reformatting.
From-SVN: r165106
Arnaud Charlet [Thu, 7 Oct 2010 13:21:42 +0000 (15:21 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Component_Size): It is now illegal to give an incorrect component size
clause in the case of aliased or atomic components.
* sem_prag.adb (Analyze_Pragma, case Pack): It is now illegal to give
an effective pragma Pack in the case of aliased or atomic components.
2010-10-07 Steve Baird <baird@adacore.com>
* exp_ch4.adb (Expand_N_Allocator): Do not bypass expansion
in the case of a violation of an active No_Task_Hierarchy restriction.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validate_Derived_Type_Instance): If a formal derived
type is non-limited, an actual for it cannot be limited.
From-SVN: r165105
Arnaud Charlet [Thu, 7 Oct 2010 13:06:22 +0000 (15:06 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* einfo.ads (No_Pool_Assigned): Update documentation.
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Storage_Size): We only set No_Pool_Assigned if the expression is a
static constant and zero.
* sem_res.adb (Resolve_Allocator): Allocation from empty storage pool
should be an error not a warning.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb (Expand_Array_Aggregate): Recognize additional cases
where an aggregate in an assignment can be built directly into the
target, and does not require the creation of a temporary that may
overflow the stack.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb (Analyze_Record_Aggregate): In
Ada2012, a choice list
in a record aggregate can correspond to several components of
anonymous access types, as long as the designated subtypes match.
From-SVN: r165104
Robert Dewar [Thu, 7 Oct 2010 12:59:00 +0000 (12:59 +0000)]
gnat_rm.texi, [...]: Change spelling parametrize(d) => parameterize(d).
2010-10-07 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi, exp_util.adb, sinfo.adb, sinfo.ads, sem_ch12.adb,
sem.adb, gnat_ugn.texi, sem_util.ads, par-ch6.adb, targparm.ads,
restrict.adb, sem_ch6.adb, sem_ch6.ads, sprint.adb, i-c.ads: Change
spelling parametrize(d) => parameterize(d).
From-SVN: r165103
Robert Dewar [Thu, 7 Oct 2010 12:52:01 +0000 (12:52 +0000)]
sem_ch12.adb: Add comment.
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_ch12.adb: Add comment.
* sem_ch6.adb: Minor reformatting.
From-SVN: r165102
Alan Modra [Thu, 7 Oct 2010 12:47:52 +0000 (23:17 +1030)]
rs6000.c (rs6000_emit_prologue): Use gen_int_mode rather than sign extension by hand.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Use gen_int_mode
rather than sign extension by hand.
From-SVN: r165101
Arnaud Charlet [Thu, 7 Oct 2010 12:45:48 +0000 (14:45 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb, par-ch10.adb: Add
Pexp to Pf_Rec constants
(P_Subprogram): Expression is always enclosed in parentheses
* par.adb (Pf_Rec): add Pexp flag for parametrized expression
* sinfo.ads (N_Parametrized_Expression): Expression must be in parens
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Specification): Implement
Ada2012
checks on functions that return an abstract type or have a controlling
result whose designated type is an abstract type.
(Check_Private_Overriding): Implement
Ada2012 checks on functions
declared in the private part, if an abstract type is involved.
* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): In
Ada2012,
reject a generic function that returns an abstract type.
* exp_ch5.adb (Expand_Simple_Function_Return): in
Ada2012, if a
function has a controlling access result, check that the tag of the
return value matches the designated type of the return expression.
From-SVN: r165100
Arnaud Charlet [Thu, 7 Oct 2010 12:37:10 +0000 (14:37 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch6.adb: Fix error in handling of parametrized expressions.
* par-ch4.adb (P_Name): Allow qualified expression as name in Ada 2012
mode.
(P_Simple_Expression): Better message for qualified expression prefix
* s-crc32.adb: Minor reformatting.
* exp_intr.adb (Expand_Unc_Deallocation): Remove test for empty
storage pool (this test is moved to Sem_Intr).
* sem_intr.adb (Check_Intrinsic_Call): Add check for deallocation from
empty storage pool, moved here from Exp_Intr and made into error.
(Check_Intrinsic_Call): Remove assumption in generating not-null free
warning that the name of the instantiation is Free.
* sinput.adb (Tree_Read): Document use of illegal free call allowed in
GNAT mode.
* types.ads: Remove storage size clauses from big types (since we may
need to do deallocations, which are now illegal for empty pools).
2010-10-07 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Add missing word.
From-SVN: r165099
Robert Dewar [Thu, 7 Oct 2010 12:33:30 +0000 (12:33 +0000)]
exp_util.adb (Insert_Actions): Add handling of N_Parametrized_Expression.
2010-10-07 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Insert_Actions): Add handling of
N_Parametrized_Expression.
* par-ch6.adb (P_Subprogram): Add parsing of parametrized expression
* sem.adb: Add entry for N_Parametrized_Expression
* sem_ch6.adb (Analyze_Parametrized_Expression): New procedure
* sem_ch6.ads (Analyze_Parametrized_Expression): New procedure
* sinfo.ads, sinfo.adb: Add N_Parametrized_Expression
* sprint.adb (Sprint_Node): Add handling for N_Parametrized_Expression
* par-ch4.adb: Minor reformatting.
From-SVN: r165098
Arnaud Charlet [Thu, 7 Oct 2010 12:24:31 +0000 (14:24 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* scng.adb (Skip_Other_Format_Characters): New procedure
(Start_Of_Wide_Character): New procedure
(Scan): Use Start_Of_Wide_Character where appropriate
(Scan): Improve error message for other_format chars in identifier
(Scan): Allow other_format chars between tokens
2010-10-07 Javier Miranda <miranda@adacore.com>
* exp_util.adb (Safe_Prefixed_Reference): When removing side effects,
Add missing support for explicit dereferences.
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch10.adb, par-ch3.adb, par.adb: Minor reformatting.
From-SVN: r165097