Eric Botcazou [Sun, 10 Oct 2010 11:26:16 +0000 (11:26 +0000)]
ada-tree.h (DECL_BY_DOUBLE_REF_P): New macro.
* gcc-interface/ada-tree.h (DECL_BY_DOUBLE_REF_P): New macro.
* gcc-interface/gigi.h (annotate_object): Add BY_DOUBLE_REF parameter.
* gcc-interface/decl.c (annotate_object): Likewise and handle it.
(gnat_to_gnu_entity): Adjust calls to annotate_object.
(gnat_to_gnu_param): If fat pointer types are passed by reference on
the target, pass them by explicit reference.
* gcc-interface/misc.c (default_pass_by_ref): Fix type of constant.
* gcc-interface/trans.c (Identifier_to_gnu): Do DECL_BY_DOUBLE_REF_P.
(Subprogram_Body_to_gnu): Adjust call to annotate_object.
(call_to_gnu): Handle DECL_BY_DOUBLE_REF_P.
* gcc-interface/utils.c (convert_vms_descriptor): Add BY_REF parameter
and handle it.
(build_function_stub): Iterate on the parameters of the subprogram in
lieu of on the argument types. Adjust call to convert_vms_descriptor.
From-SVN: r165250
Nicola Pero [Sun, 10 Oct 2010 11:18:57 +0000 (11:18 +0000)]
In libobjc/: 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
* Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
struct_objc_method_list.h, struct_objc_module.h,
struct_objc_protocol_list.h, struct_objc_symtab.h.
* objc/deprecated/struct_objc_category.h: New.
* objc/deprecated/struct_objc_ivar.h: New.
* objc/deprecated/struct_objc_ivar_list.h: New.
* objc/deprecated/struct_objc_method.h: New.
* objc/deprecated/struct_objc_method_list.h: New.
* objc/deprecated/struct_objc_module.h: New.
* objc/deprecated/struct_objc_protocol_list.h: New.
* objc/deprecated/struct_objc_symtab.h: New.
* objc/deprecated/struct_objc_static_instances.h: New.
* objc/objc-api.h: Definitions of deprecated structures moved into
the above header fragment files in objc/deprecated/. Include the
files instead of definition the structures here. Updated
comments.
* objc/runtime.h: Updated comments. Do not include objc-api.h.
(objc_set_enumeration_mutation_handler): Renamed to
objc_setEnumerationMutationHandler.
* objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
to objc_setEnumerationMutationHandler.
* objc/objc-exception.h (objc_set_exception_matcher): Renamed to
objc_setExceptionMatcher.
(objc_set_uncaught_exception_handler): Renamed to
objc_setUncaughtExceptionHandler.
* exception.c: Same changes.
From-SVN: r165249
Thomas Koenig [Sun, 10 Oct 2010 09:52:46 +0000 (09:52 +0000)]
frontend-passes.c: Include opts.h.
2010-10-09 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c: Include opts.h.
(optimize_comparison): Renamed from optimize_equality.
Change second argument to operation to be compared.
Use flag_finite_math_only to avoid comparing REAL and
COMPLEX only when NANs are honored. Simplify comparing
of string concatenations where left or right operands are
equal. Simplify all comparison operations, based on the result
of gfc_dep_compare_expr.
* dependency.c: Include arith.h.
(gfc_are_identical_variables): Volatile variables should not
compare equal to themselves.
(gfc_dep_compare_expr): Handle string constants and string
concatenations.
2010-10-09 Thomas Koenig <tkoenig@gcc.gnu.org>
* gfortran.dg/character_comparison_4.f90: New test.
* gfortran.dg/character_comparison_5.f90: New test.
* gfortran.dg/character_comparison_6.f90: New test.
From-SVN: r165248
Richard Sandiford [Sun, 10 Oct 2010 09:18:11 +0000 (09:18 +0000)]
mips.c (mips_handle_option): Make "value" with ATTRIBUTE_UNUSED.
gcc/
* config/mips/mips.c (mips_handle_option): Make "value" with
ATTRIBUTE_UNUSED.
From-SVN: r165247
GCC Administrator [Sun, 10 Oct 2010 00:18:22 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r165246
Nicola Pero [Sat, 9 Oct 2010 22:30:20 +0000 (22:30 +0000)]
In libobjc/: 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-sync.c: Include objc-private/common.h.
From-SVN: r165242
Nicola Pero [Sat, 9 Oct 2010 22:22:23 +0000 (22:22 +0000)]
In libobjc/: 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-foreach.c: Include objc-private/common.h.
* objc/deprecated/METHOD_NULL.h: New file.
* objc/objc-api.h: Include deprecated/METHOD_NULL.h instead of
defining METHOD_NULL here.
* Makefile.in (OBJC_DEPRECATED_H): Added METHOD_NULL.h.
* Object.m ([+instancesRespondTo:]): Use (Method_t)0 instead of
METHOD_NULL.
([-respondsTo:]): Same change.
* objc/objc-api.h (method_get_imp): Converted it into a normal
function so that we can hide the internals of struct objc_method.
* sendmsg.c (method_get_imp): Implemented.
From-SVN: r165241
Richard Henderson [Sat, 9 Oct 2010 22:05:51 +0000 (15:05 -0700)]
re PR rtl-optimization/33721 ([meta-bug] Gcc can't properly align stack variable)
PR rtl-opt/33721
* explow.c (allocate_dynamic_stack_space): Add REQUIRED_ALIGN parm,
remove TARGET parm, convert KNOWN_ALIGN parm to SIZE_ALIGN. Honor
required_align, tidy the code a bit. Emit split_stack code in the
right place. Mark the return value with the alignment properly.
* expr.h (allocate_dynamic_stack_space): Update decl.
* builtins.c (expand_builtin_apply): Update call to
allocate_dynamic_stack_space.
(expand_builtin_alloca): Likewise. Remove TARGET parameter.
* calls.c (initialize_argument_information): Update call to
allocate_dynamic_stack_space.
(expand_call): Likewise.
* cfgexpand.c (get_decl_align_unit): Don't limit alignment.
Don't update_stack_alignment here.
(alloc_stack_frame_space): Make ALIGN unsigned.
(stack_var_cmp): Sort by alignment too.
(partition_stack_vars): Don't merge large and small alignment vars.
(expand_one_stack_var_at): Add BASE and BASE_ALIGN parameters.
Take care when BASE is not virtual_stack_vars_rtx.
(expand_stack_vars): Allocate dynamic stack space for large
alignment variables.
(expand_one_stack_var): Update all to expand_one_stack_var_at.
(defer_stack_allocation): True for large alignment vars.
(update_stack_alignment): Merge into ...
(expand_one_var): ... here.
(gimple_expand_cfg): Place code from expand_stack_vars.
From-SVN: r165240
Nathan Froyd [Sat, 9 Oct 2010 21:13:29 +0000 (21:13 +0000)]
pdp11.h (FUNCTION_ARG, [...]): Delete.
* config/pdp11/pdp11.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/pdp11/pdp11.c (pdp11_function_arg): New function.
(pdp11_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165239
Nathan Froyd [Sat, 9 Oct 2010 21:12:56 +0000 (21:12 +0000)]
libgcc2.h: Use __SIZEOF_LONG_LONG__ instead of LONG_LONG_TYPE_SIZE.
* libgcc2.h: Use __SIZEOF_LONG_LONG__ instead of LONG_LONG_TYPE_SIZE.
* libgcc2.c: Likewise.
From-SVN: r165238
Eric Botcazou [Sat, 9 Oct 2010 20:23:05 +0000 (20:23 +0000)]
misc.c: Delete prototypes.
* gcc-interface/misc.c: Delete prototypes.
(gnat_init_options): Use local variable.
(lang_hooks): Move to the end of the file.
From-SVN: r165237
Nicola Pero [Sat, 9 Oct 2010 20:11:02 +0000 (20:11 +0000)]
In libobjc/: 2010-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
* objc/objc-api.h (struct objc_super, Super, Super_t,
objc_msg_lookup_super, objc_msg_sendv, objc_msg_forward,
objc_msg_forward2): Declarations moved to objc/message.h. Include
message.h here.
* objc/message.h: Added such declarations; updated comments.
From-SVN: r165236
Richard Guenther [Sat, 9 Oct 2010 18:28:16 +0000 (18:28 +0000)]
re PR lto/45956 (Promoted statics conflict)
2010-10-09 Richard Guenther <rguenther@suse.de>
PR lto/45956
* lto-streamer-in.c (lto_register_var_decl_in_symtab):
Properly check if a decl is an automatic var.
* gcc.dg/lto/
20101009-2_0.c: New testcase.
* gcc.dg/lto/
20101009-2_1.c: Likewise.
* gcc.dg/lto/
20101009-2_2.c: Likewise.
From-SVN: r165235
Richard Guenther [Sat, 9 Oct 2010 15:59:50 +0000 (15:59 +0000)]
re PR lto/45947 (ICE: tree code 'template_decl' is not supported in gimple streams with -flto/-fwhopr)
2010-10-09 Richard Guenther <rguenther@suse.de>
PR lto/45947
* tree.c (free_lang_data_in_cgraph): Properly walk the varpool.
* g++.dg/lto/
20101009-1_0.C: New testcase.
From-SVN: r165234
Nathan Froyd [Sat, 9 Oct 2010 14:22:30 +0000 (14:22 +0000)]
mmix-protos.h (mmix_function_arg): Delete.
* config/mmix/mmix-protos.h (mmix_function_arg): Delete.
* config/mmix/mmix.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/mmix/mmix.c (mmix_function_arg): Rename to...
(mmix_function_arg_1): ...this. Make static. Take a const_tree and
bool arguments.
(mmix_function_arg): New function.
(mmix_function_incoming_arg): New function.
(mmix_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
(TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165230
Nathan Froyd [Sat, 9 Oct 2010 14:21:47 +0000 (14:21 +0000)]
vax.h (FUNCTION_ARG, [...]): Delete.
* config/vax/vax.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/vax/vax.c (vax_function_arg): New function.
(vax_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r165229
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