]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
12 years agoPR c++/54955 - Fail to parse alignas expr at the beginning of a declaration
dodji [Wed, 31 Oct 2012 08:55:43 +0000 (08:55 +0000)] 
PR c++/54955 - Fail to parse alignas expr at the beginning of a declaration

In this PR, g++ embarrassingly fails to parse the simple alignas
expression below:

    alignas(double) int f;

even though the simple-declaration production in Clause 7 suggests
otherwise.

Fixed thus and tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp

PR c++/54955
* parser.c (cp_nth_tokens_can_be_std_attribute_p): Recognize the
'Alignas' keyword as the beginning of a c++11 attribute specifier.
Update the comment of the function.
(cp_next_tokens_can_be_gnu_attribute_p): Update the comment of the
function.

gcc/testsuite/

PR c++/54955
* g++.dg/cpp0x/gen-attrs-48-2.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193029 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/19105
jakub [Wed, 31 Oct 2012 08:45:27 +0000 (08:45 +0000)] 
PR tree-optimization/19105
PR tree-optimization/21643
PR tree-optimization/46309
* tree-ssa-reassoc.c (init_range_entry): Add STMT argument
and use it if EXP is NULL.
(update_range_test): Handle OPCODE equal to ERROR_MARK
and oe->op NULL.
(optimize_range_tests): Likewise.
(final_range_test_p, suitable_cond_bb, no_side_effect_bb, get_ops,
maybe_optimize_range_tests): New functions.
(reassociate_bb): Call maybe_optimize_range_tests if last
stmt of bb is GIMPLE_COND that hasn't been visited yet.

* gcc.dg/pr19105.c: New test.
* gcc.dg/pr21643.c: New test.
* gcc.dg/pr46309-2.c: New test.
* gcc.c-torture/execute/pr46309.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193028 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:01:36 +0000 (08:01 +0000)] 
gcc/
* config/rs6000/rs6000.md (insvsi, insvdi, extvsi, extvdi): Rename to...
(insvsi_internal, insvdi_internal, extvsi_internal)
(extvdi_internal): ...this.
(insv, extv): Update accordingly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193027 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:01:23 +0000 (08:01 +0000)] 
gcc/
* combine.c (simplify_comparison): If BITS_BIG_ENDIAN, always assume
that zero_extracts of const_ints are doing word-sized extractions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193026 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:01:14 +0000 (08:01 +0000)] 
gcc/
* combine.c (make_extraction): Remove dead wanted_inner_mode-
and pos_rtx-related code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193025 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:00:51 +0000 (08:00 +0000)] 
gcc/
* expmed.c (store_bit_field_1): Move generation of MEM insvs
to the MEM_P block.
(extract_bit_field_1): Likewise extvs and extzvs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193024 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:00:39 +0000 (08:00 +0000)] 
gcc/
* expmed.c (store_bit_field_using_insv): New function,
split out from...
(store_bit_field_1): ...here.
(extract_bit_field_using_extv): New function, split out from...
(extract_bit_field_1): ...here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193023 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:00:24 +0000 (08:00 +0000)] 
gcc/
* expmed.c (store_bit_field_1): Use OP_MODE to check whether an
insv pattern is available.  Remove redundant checks for OP_MODE
being MAX_MACHINE_MODE.
(extract_bit_field_1): Remove redundant checks for EXT_MODE being
MAX_MACHINE_MODE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193022 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Wed, 31 Oct 2012 08:00:12 +0000 (08:00 +0000)] 
gcc/
* expmed.c (store_bit_field_1): Remove test for BLKmode values.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193021 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-31 Ralf Corsépius <ralf.corsepius@rtems.org>,
corsepiu [Wed, 31 Oct 2012 05:03:28 +0000 (05:03 +0000)] 
2012-10-31  Ralf Corsépius  <ralf.corsepius@rtems.org>,
    Joel Sherrill  <joel.sherrill@oarcorp.com>

* config/sparc/t-rtems: New (Custom multilibs).
* config/sparc/t-rtems-64: New (Custom multilibs).
* config.gcc (sparc64-*-rtems*): Add sparc/t-rtems-64.
(sparc-*-rtems*): Add sparc/t-rtems.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193018 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDetect assembler support for RTM
rth [Wed, 31 Oct 2012 04:46:20 +0000 (04:46 +0000)] 
Detect assembler support for RTM

* acinclude.m4 (LIBITM_CHECK_AS_RTM): New.
* configure.ac: Use it.
* config.h.in, configure: Rebuild.
* testsuite/Makefile.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193017 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
amodra [Wed, 31 Oct 2012 04:22:48 +0000 (04:22 +0000)] 
gcc/
* config/rs6000/rs6000.c (legitimize_reload_address): Remove code
handling non-aligned ld/std.
* config/rs6000/paired.md (movv2sf_paired): Use 'Y' instead of 'o'.
* config/rs6000/vsx.md (vsx_mov, vsx_movti): Likewise.
* config/rs6000/altivec.md (altivec_mov, altivec_movti): Likewise.
* config/rs6000/dfp.md (movtd_internal): Use 'm' instead of 'o'.
gcc/testsuite/
* gcc.target/powerpc/dimode_off.c: New.
* gcc.target/powerpc/timode_off.c: New.
* gcc.target/powerpc/dfmode_off.c: New.
* gcc.target/powerpc/tfmode_off.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193016 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * src/powerpc/linux64_closure.S: Add new ABI support.
amodra [Wed, 31 Oct 2012 03:45:34 +0000 (03:45 +0000)] 
* src/powerpc/linux64_closure.S: Add new ABI support.
* src/powerpc/linux64.S: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193015 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/linux64.h (TARGET_OS_CPP_BUILTINS): Define _CALL_LINUX.
amodra [Wed, 31 Oct 2012 03:43:22 +0000 (03:43 +0000)] 
* config/rs6000/linux64.h (TARGET_OS_CPP_BUILTINS): Define _CALL_LINUX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193014 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/52498
amylaar [Wed, 31 Oct 2012 03:21:03 +0000 (03:21 +0000)] 
    PR target/52498
        * vmsdbgout.c (vmsdbgout_write_source_line): Comment out names of
        last two parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193013 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lra-constraints.c (choose_split_class): Add ATTRIBUTE_UNUSED to
amylaar [Wed, 31 Oct 2012 02:51:26 +0000 (02:51 +0000)] 
    * lra-constraints.c (choose_split_class): Add ATTRIBUTE_UNUSED to
        hard_reg_class.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193012 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-31 Joel Sherrill <joel.sherrill@oarcorp.com>
corsepiu [Wed, 31 Oct 2012 02:17:37 +0000 (02:17 +0000)] 
2012-10-31  Joel Sherrill  <joel.sherrill@oarcorp.com>

* config.host (m32r-*-rtems*): Include crtinit.o and crtfinit.o
as extra_parts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193010 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/bits/forward_list.h (forward_list): Adjust comments.
redi [Wed, 31 Oct 2012 01:09:59 +0000 (01:09 +0000)] 
* include/bits/forward_list.h (forward_list): Adjust comments.
(forward_list(const forward_list&, const _Alloc&)): Use
_M_range_initialize to copy elements.
(forward_list(forward_list&&, const _Alloc&)): Add exception
specification.
(_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
Remove.
* include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
const _Node_alloc_type&)): Remove.
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
memory leak when allocators are not equal.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193009 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Add -fgo-relative-import-path.
ian [Wed, 31 Oct 2012 00:38:49 +0000 (00:38 +0000)] 
compiler: Add -fgo-relative-import-path.

* lang.opt (-fgo-relative-import-path): New option.
* go-lang.c (go_relative_import_path): New static variable.
(go_langhook_init): Pass go_relative_import_path to
go_create_gogo.
(go_langhook_handle_option): Handle -fgo-relative-import-path.
* go-c.h (go_create_gogo): Update declaration.
* gccgo.texi (Invoking gccgo): Document
-fgo-relative-import-path.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193008 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 31 Oct 2012 00:18:51 +0000 (00:18 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193006 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/54551
aoliva [Tue, 30 Oct 2012 23:47:35 +0000 (23:47 +0000)] 
PR debug/54551
PR debug/54693
* valtrack.c (dead_debug_promote_uses): Assert-check that
global used bit was clear and initialize entry
unconditionally.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193003 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in
ebotcazou [Tue, 30 Oct 2012 23:08:14 +0000 (23:08 +0000)] 
* cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in
head comment.
(hash_rtx): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193001 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove lra_in_progress check for ARG_POINTER_REGNUM
hjl [Tue, 30 Oct 2012 22:56:52 +0000 (22:56 +0000)] 
Remove lra_in_progress check for ARG_POINTER_REGNUM

gcc/

PR rtl-optimization/55093
* rtlanal.c (simplify_subreg_regno): Remove lra_in_progress
check for ARG_POINTER_REGNUM.

gcc/testsuite/

PR rtl-optimization/55093
* gcc.target/i386/pr55093.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193000 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/Make-lang.in: Fix and clean up rules for C files.
ebotcazou [Tue, 30 Oct 2012 22:54:04 +0000 (22:54 +0000)] 
* gcc-interface/Make-lang.in: Fix and clean up rules for C files.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192998 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRename pr55116.c to pr55116-1.c
hjl [Tue, 30 Oct 2012 21:39:05 +0000 (21:39 +0000)] 
Rename pr55116.c to pr55116-1.c

* gcc.target/i386/pr55116.c: Renamed to ...
* gcc.target/i386/pr55116-1.c: This.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192997 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd another testcase for PR middle-end/55116
hjl [Tue, 30 Oct 2012 21:35:35 +0000 (21:35 +0000)] 
Add another testcase for PR middle-end/55116

* gcc.target/i386/pr55116-2.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192996 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-30 Steve Ellcey <sellcey@mips.com>
sje [Tue, 30 Oct 2012 21:21:41 +0000 (21:21 +0000)] 
2012-10-30  Steve Ellcey  <sellcey@mips.com>

* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Change order
and add mabi=64.
(DRIVER_SELF_SPECS): Make -n32 the default on mips64* archs.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Change order.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192995 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix ChangeLog typo.
amylaar [Tue, 30 Oct 2012 21:06:12 +0000 (21:06 +0000)] 
Fix ChangeLog typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192994 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lra-constrraints.c (check_secondary_memory_needed_p):
amylaar [Tue, 30 Oct 2012 21:03:03 +0000 (21:03 +0000)] 
* lra-constrraints.c (check_secondary_memory_needed_p):
Add ATTRIBUTE_UNUSED to parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192993 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Tue, 30 Oct 2012 19:07:28 +0000 (19:07 +0000)] 
gcc/
* defaults.h (SLOW_UNALIGNED_ACCESS): Provide default definition.
* expmed.c (SLOW_UNALIGNED_ACCESS): Remove default definition.
* expr.c (SLOW_UNALIGNED_ACCESS): Likewise.
* lra-constraints.c (SLOW_UNALIGNED_ACCESS): Likewise.
(simplify_operand_subreg): Don't check STRICT_ALIGNMENT here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192992 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ipa-inline-analysis.c (eliminated_by_inlining_prob): Cleanup.
hubicka [Tue, 30 Oct 2012 16:51:12 +0000 (16:51 +0000)] 
* ipa-inline-analysis.c (eliminated_by_inlining_prob): Cleanup.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192991 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
hubicka [Tue, 30 Oct 2012 16:50:05 +0000 (16:50 +0000)] 
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
EVERY_ITERATION with implicit value of true.
(record_estimate): Check dominance relationship of the basic block
we are estimating on instead of relying on UPPER to be false.
(struct ilb_data): Drop RELIABLE.
(idx_infer_loop_bounds): Update.
(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
(infer_loop_bounds_from_array): Drop parameter RELIABLE.
(infer_loop_bounds_from_undefined): Update comments and handling
of RELIABLE.
(estimate_numbers_of_iterations_loop): Record all bounds.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192990 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
hubicka [Tue, 30 Oct 2012 16:12:16 +0000 (16:12 +0000)] 
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
EVERY_ITERATION with implicit value of true.
(record_estimate): Check dominance relationship of the basic block
we are estimating on instead of relying on UPPER to be false.
(struct ilb_data): Drop RELIABLE.
(idx_infer_loop_bounds): Update.
(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
(infer_loop_bounds_from_array): Drop parameter RELIABLE.
(infer_loop_bounds_from_undefined): Update comments and handling
of RELIABLE.
(estimate_numbers_of_iterations_loop): Record all bounds.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192989 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Tue, 30 Oct 2012 14:33:48 +0000 (14:33 +0000)] 
gcc/
* lra-eliminations.c (lra_eliminate_regs_1): Use simplify_gen_subreg
rather than gen_rtx_SUBREG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192988 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-30 Richard Biener <rguenther@suse.de>
rguenth [Tue, 30 Oct 2012 14:14:04 +0000 (14:14 +0000)] 
2012-10-30  Richard Biener  <rguenther@suse.de>

* gimple.h (gimple_store_p): New predicate.
(gimple_assign_load_p): Likewise.
* tree-inline.c (estimate_num_insns): Use it.

* gcc.dg/vect/slp-perm-2.c: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192987 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-30 Marc Glisse <marc.glisse@inria.fr>
glisse [Tue, 30 Oct 2012 12:56:47 +0000 (12:56 +0000)] 
2012-10-30  Marc Glisse  <marc.glisse@inria.fr>

* fold-const.c (fold_binary_op_with_conditional_arg): Handle vectors.
(fold_binary_loc): call it for VEC_COND_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192986 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-30 James Greenhalgh <james.greenhalgh@arm.com>
jgreenhalgh [Tue, 30 Oct 2012 12:31:49 +0000 (12:31 +0000)] 
2012-10-30  James Greenhalgh  <james.greenhalgh@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>

* config/aarch64/aarch64-simd.md
(aarch64_simd_bsl<mode>_internal): New pattern.
(aarch64_simd_bsl<mode>): Likewise.
(aarch64_vcond_internal<mode>): Likewise.
(vcondu<mode><mode>): Likewise.
(vcond<mode><mode>): Likewise.
* config/aarch64/iterators.md (UNSPEC_BSL): Add to define_constants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192985 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-30 Richard Biener <rguenther@suse.de>
rguenth [Tue, 30 Oct 2012 12:02:39 +0000 (12:02 +0000)] 
2012-10-30  Richard Biener  <rguenther@suse.de>

PR tree-optimization/55111
* tree-ssa-pre.c (eliminate_insert): Properly fold the built
stmt.

* gcc.dg/torture/pr55111.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192984 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54963
olegendo [Tue, 30 Oct 2012 09:22:14 +0000 (09:22 +0000)] 
PR target/54963
* config/sh/iterators.md (SIDI): New mode iterator.
* config/sh/sh.md (negdi2): Use parallel around operation and T_REG
clobber in expander.
(*negdi2): Mark output operand as early clobbered.  Add T_REG clobber.
Split after reload.  Simplify split code.
(abssi2, absdi2): Fold expanders into abs<mode>2.
(*abssi2, *absdi2): Fold into *abs<mode>2 insn_and_split.  Split insns
before reload.
(*negabssi2, *negabsdi2): Fold into *negabs<mode>2.  Add T_REG clobber.
Split insns before reload.
(negsi_cond): Reformat.  Use emit_move_insn instead of
gen_movesi.
(negdi_cond): Reformat.  Use emit_move_insn instead of a pair
of gen_movsi.  Split insn before reload.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192983 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54988
olegendo [Tue, 30 Oct 2012 09:07:08 +0000 (09:07 +0000)] 
PR target/54988
* config/sh/sh.md (tstqi_t_zero): Rename to *tstqi_t_zero.
(*tst<mode>_t_zero): New insns.
* config/sh/iterators.md (lowpart_be, lowpart_le): New mode attributes.

PR target/54988
* gcc.target/sh/pr53988.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192982 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove alloca from dump_gimple_bb_header
hjl [Tue, 30 Oct 2012 08:38:11 +0000 (08:38 +0000)] 
Remove alloca from dump_gimple_bb_header

* gimple-pretty-print.c (dump_gimple_bb_header): Avoid alloca.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192981 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd myself to MAINTAINERS
gganesh [Tue, 30 Oct 2012 08:30:21 +0000 (08:30 +0000)] 
Add myself to MAINTAINERS

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192980 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR debug/54953
jakub [Tue, 30 Oct 2012 08:08:01 +0000 (08:08 +0000)] 
PR debug/54953
* valtrack.h (DEBUG_TEMP_AFTER_WITH_REG_FORCE): New.
* valtrack.c (dead_debug_insert_temp): Use emit_debug_insn_after
even for where == DEBUG_TEMP_AFTER_WITH_REG_FORCE.
* dce.c (word_dce_process_block, dce_process_block): Pass
DEBUG_TEMP_AFTER_WITH_REG_FORCE if insn is needed and therefore
not going to be eliminated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192978 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54989
amker [Tue, 30 Oct 2012 02:17:50 +0000 (02:17 +0000)] 
PR target/54989
* gcc.dg/hoist-register-pressure-1.c: Rename from
hoist-register-pressure.c. Add nonpic condition.
* gcc.dg/hoist-register-pressure-2.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192976 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 30 Oct 2012 00:17:58 +0000 (00:17 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192975 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoThis patch implements the unification of the *bitmap interfaces as discussed.
crowl [Tue, 30 Oct 2012 00:02:55 +0000 (00:02 +0000)] 
This patch implements the unification of the *bitmap interfaces as discussed.
Essentially, we rename ebitmap and sbitmap functions to use the same names
as the bitmap functions.  This rename works because we can now overload
on the bitmap type.  Some macros now become inline functions to enable
that overloading.

The sbitmap non-bool returning bitwise operations have been merged with
the bool versions.  Sometimes this merge involved modifying the non-bool
version to compute the bool value, and sometimes modifying bool version to
add additional work from the non-bool version.  The redundant routines have
been removed.

The allocation functions have not been renamed, because we often do not
have an argument on which to overload.  The cardinality functions have not
been renamed, because they have different parameters, and are thus not
interchangable.  The iteration functions have not been renamed, because
they are functionally different.

Tested on x86_64, contrib/config-list.mk testing passed.

Index: gcc/ChangeLog

2012-10-29  Lawrence Crowl  <crowl@google.com>

* sbitmap.h (sbitmap_copy): Rename bitmap_copy.
(sbitmap_copy_n): Rename bitmap_copy_n.
(sbitmap_equal): Rename bitmap_equal_p.
(sbitmap_empty_p): Rename bitmap_empty_p.
(sbitmap_range_empty_p): Rename bitmap_range_empty_p.
(sbitmap_zero): Rename bitmap_clear.
(sbitmap_ones): Rename bitmap_ones.
(sbitmap_vector_zero): Rename bitmap_vector_clear.
(sbitmap_vector_ones): Rename bitmap_vector_ones.
(sbitmap_not): Rename bitmap_not.
(sbitmap_a_and_b_cg): Commented out.
(sbitmap_a_and_b): Rename bitmap_and.  Add bool return.
(sbitmap_difference): Rename bitmap_and_compl.
(sbitmap_a_or_b_cg): Commented out.
(sbitmap_a_or_b): Rename bitmap_xor.  Add bool return.
(sbitmap_a_xor_b_cg): Commented out.
(sbitmap_a_xor_b): Rename bitmap_xor.  Add bool return.
(sbitmap_a_and_b_or_c_cg): Rename bitmap_and_or.
(sbitmap_a_and_b_or_c): Commented out.
(sbitmap_a_or_b_and_c_cg): Rename bitmap_or_and.
(sbitmap_a_or_b_and_c): Commented out.
(sbitmap_union_of_diff_cg): Rename bitmap_ior_and_compl.
(sbitmap_union_of_diff): Commented out.
(dump_sbitmap): Rename dump_bitmap.
(dump_sbitmap_file): Rename dump_bitmap_file.
(debug_sbitmap): Rename debug_bitmap.
(dump_sbitmap_vector): Rename dump_bitmap_vector.
(sbitmap_first_set_bit): Rename bitmap_first_set_bit.
(sbitmap_last_set_bit): Rename bitmap_last_set_bit.
(sbitmap_a_subset_b_p): Rename bitmap_subset_p.
(sbitmap_any_common_bits): Rename bitmap_intersect_p.
(#define sbitmap_free): Reimplement as inline function.
(#define sbitmap_vector_free): Reimplement as inline function.
* bitmap.h (#define bitmap_zero): Remove as redundant.
(#define bitmap_empty_p): Reimplement as inline function.
(#define dump_bitmap): Reimplement as inline function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192969 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/c-family:
redi [Mon, 29 Oct 2012 23:21:35 +0000 (23:21 +0000)] 
gcc/c-family:
PR c++/54930
* c.opt (Wreturn_local_addr): Define new option.

gcc/c:
PR c++/54930
* c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.

gcc/cp:
PR c++/54930
* typeck.c (maybe_warn_about_returning_address_of_local): Use
OPT_Wreturn_local_addr.

gcc:
PR c++/54930
* doc/invoke.texi (Warning Options): Document -Wno-return-local-addr.

gcc/testsuite:
PR c++/54930
* gcc.dg/Wreturn-local-addr.c: New.
* g++.dg/warn/Wno-return-local-addr.C: New.
* g++.dg/warn/Wreturn-local-addr.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192968 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd a testcase for PR middle-end/55116
hjl [Mon, 29 Oct 2012 23:09:03 +0000 (23:09 +0000)] 
Add a testcase for PR middle-end/55116

PR middle-end/55116
* gcc.target/i386/pr55116.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192967 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove trailing white spaces
hjl [Mon, 29 Oct 2012 21:56:35 +0000 (21:56 +0000)] 
Remove trailing white spaces

* lra-assigns.c: Remove trailing white spaces.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-int.h: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192966 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/55123
redi [Mon, 29 Oct 2012 21:49:19 +0000 (21:49 +0000)] 
PR libstdc++/55123
* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
Do not instantiate allocator with element_type.
* testsuite/20_util/shared_ptr/cons/55123.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192964 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Mon, 29 Oct 2012 20:17:23 +0000 (20:17 +0000)] 
2012-10-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/53066
c/
* c-decl.c (warn_if_shadowing): Do not warn if a variable
shadows a function, unless the variable is a function or a
pointer-to-function.
gcc/
* tree.h (FUNCTION_POINTER_TYPE_P): New.
testsuite/
* gcc.dg/Wshadow-4.c: New.
* gcc.dg/Wshadow-4.h: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192963 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/54693
aoliva [Mon, 29 Oct 2012 19:37:25 +0000 (19:37 +0000)] 
PR debug/54693
* gcc/valtrack.c (dead_debug_insert_temp): Defer rescan of
newly-emitted debug insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192962 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/ChangeLog:
aoliva [Mon, 29 Oct 2012 19:36:47 +0000 (19:36 +0000)] 
gcc/ChangeLog:
PR debug/54693
* tree-ssa-threadedge.c (thread_around_empty_block): Copy
debug temps from predecessor before threading.
gcc/testsuite/ChangeLog:
PR debug/54693
* gcc.dg/guality/pr54693.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192961 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
dnovillo [Mon, 29 Oct 2012 19:35:35 +0000 (19:35 +0000)] 
* testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192960 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/54551
aoliva [Mon, 29 Oct 2012 19:27:31 +0000 (19:27 +0000)] 
PR debug/54551
PR debug/54693
* valtrack.c (dead_debug_global_find): Accept NULL dtemp.
(dead_debug_global_insert): Return new entry.
(dead_debug_global_replace_temp): Return early if REG is no
longer in place, or if dtemp was already substituted.
(dead_debug_promote_uses): Insert for all defs and replace all
debug uses at once.
(dead_debug_local_finish): Release used after promotion.
(dead_debug_insert_temp): Stop if dtemp is NULL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192959 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/54693
aoliva [Mon, 29 Oct 2012 19:27:09 +0000 (19:27 +0000)] 
PR debug/54693
* loop-unroll.c (loop_exit_at_end_p): Skip debug insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192958 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/54693
aoliva [Mon, 29 Oct 2012 19:26:16 +0000 (19:26 +0000)] 
PR debug/54693
* config/i386/i386.c (add_parameter_dependencies): Stop
backward scan at the insn before the incoming head.
(ix86_dependencies_evaluation_hook): Skip debug insns.  Stop
if first_arg is head.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192957 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * mmap.c (backtrace_vector_release): Correct last patch: add
ian [Mon, 29 Oct 2012 18:42:05 +0000 (18:42 +0000)] 
* mmap.c (backtrace_vector_release): Correct last patch: add
aligned, not size.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192956 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 29 Oct 2012 17:31:52 +0000 (17:31 +0000)] 
2012-10-29  Andrew Pinski  <apinski@cavium.com>

        * config/aarch64/aarch64-protos.h (aarch64_load_tp): New proto.
        * config/aarch64/aarch64.c (aarch64_load_tp): Export.
        (aarch64_init_builtins): Don't add __builtin_thread_pointer builtin.
        * config/aarch64/aarch64.h (aarch64_builtins): Delete

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192955 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 29 Oct 2012 17:16:51 +0000 (17:16 +0000)] 
2012-10-29  Marc Glisse  <marc.glisse@inria.fr>

PR middle-end/55027

gcc/
* tree.c (real_zerop, real_onep, real_twop, real_minus_onep):
Handle VECTOR_CST.

testsuite/
* gcc.dg/pr55027.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192954 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoIt is October, not September. :)
korbb [Mon, 29 Oct 2012 16:58:16 +0000 (16:58 +0000)] 
It is October, not September. :)

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192953 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoOmit testing wrap and replacement fixes during testing.
korbb [Mon, 29 Oct 2012 16:44:34 +0000 (16:44 +0000)] 
Omit testing wrap and replacement fixes during testing.

This exposes a missing result and tests a test that got hidden before.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192952 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 29 Oct 2012 16:44:01 +0000 (16:44 +0000)] 
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

* rtlanal.c (strip_address_mutation): Use SUBREG_REG instead of
XEXP.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192951 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.c (ix86_decompose_address): Use simplify_gen_subreg
uros [Mon, 29 Oct 2012 16:41:41 +0000 (16:41 +0000)] 
* config/i386/i386.c (ix86_decompose_address): Use simplify_gen_subreg
for all addresses, zero-extended with AND.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192950 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 29 Oct 2012 16:36:57 +0000 (16:36 +0000)] 
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

PR middle-end/55116
* rtlanal.c (strip_address_mutation): Add SUBREG case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192949 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/Makefile.in (s-oscons.ads): Adjust call to xoscons.
charlet [Mon, 29 Oct 2012 16:27:14 +0000 (16:27 +0000)] 
* gcc-interface/Makefile.in (s-oscons.ads): Adjust call to xoscons.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192947 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ipa-inline.c (want_inline_function_called_once_p): Rename to ...
hubicka [Mon, 29 Oct 2012 15:48:21 +0000 (15:48 +0000)] 
* ipa-inline.c (want_inline_function_called_once_p): Rename to ...
(want_inline_function_to_all_callers_p): check also functions with
multiple callers.
(ipa_inline): Handle inlining for size into multiple callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192946 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * mmap.c (backtrace_vector_release): Make sure freed block is
ian [Mon, 29 Oct 2012 15:43:37 +0000 (15:43 +0000)] 
* mmap.c (backtrace_vector_release): Make sure freed block is
aligned on 8-byte boundary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192945 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 29 Oct 2012 14:42:05 +0000 (14:42 +0000)] 
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55106
* g++.dg/pr55106.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192944 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 29 Oct 2012 14:25:22 +0000 (14:25 +0000)] 
2012-10-29  Richard Guenther  <rguenther@suse.de>

PR middle-end/53695
* tracer.c (tracer): Fixup loop structure.
* cfgloopmanip.c (force_single_succ_latches): Add assert.
(fix_loop_structure): Re-compute loop latches and disambiguate
loops with multiple latches if required.

* gcc.dg/torture/pr53695.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192943 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Pascal Obry <obry@adacore.com>
charlet [Mon, 29 Oct 2012 11:56:46 +0000 (11:56 +0000)] 
2012-10-29  Pascal Obry  <obry@adacore.com>

* xoscons.adb, Make-generated.in; The template used by xoscons is now
given as parameter.
* gcc-interface/Make-lang.in: Update dependencies.

2012-10-29  Yannick Moy  <moy@adacore.com>

* exp_dbug.adb (Qualify_Entity_Name): Only do renaming in formal
verification mode when there is a homonym.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192942 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-26 James Greenhalgh <james.greenhalgh@arm.com>
jgreenhalgh [Mon, 29 Oct 2012 11:56:03 +0000 (11:56 +0000)] 
2012-10-26  James Greenhalgh  <james.greenhalgh@arm.com>

* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192941 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Oct 2012 11:42:17 +0000 (11:42 +0000)] 
2012-10-29  Thomas Quinot  <quinot@adacore.com>

* xoscons.adb: Minor reformatting.

2012-10-29  Yannick Moy  <moy@adacore.com>

* exp_alfa.adb (Expand_Alfa): Backtrack change that removed
qualification of names in formal verification mode. Instead,
the qualification should be modified.
* exp_dbug.adb (Qualify_Entity_Name): Modify qualification in formal
verification mode, so that only a suffix is added to distinguish
homonyms from the same scope.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192940 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:41:01 +0000 (11:41 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document that pragma Optimize_Alignment (Space) is
ignored with a warning for packed variable length records.

2012-10-29  Thomas Quinot  <quinot@adacore.com>

* socket.c, g-socthi-dummy.adb, g-socthi-dummy.ads, g-socthi-vms.adb,
g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
s-oscons-tmplt.c, g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi.adb,
g-socthi.ads, xoscons.adb, g-socket.adb, g-sothco.ads: Introduce an
appropriate subtype for IOCTL requests, since these may be signed or
unsigned.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192939 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Gary Dismukes <dismukes@adacore.com>
charlet [Mon, 29 Oct 2012 11:39:21 +0000 (11:39 +0000)] 
2012-10-29  Gary Dismukes  <dismukes@adacore.com>

* exp_alfa.adb: Minor reformatting.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi, gnat_ugn.texi: Clarify documentation on maximum
line length style switch.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* layout.adb (Set_Composite_Alignment): Ignore pragma
Optimize_Alignment (Space) for packed variable length records.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192938 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:36:12 +0000 (11:36 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* s-bignum.adb: Minor comment change.

2012-10-29  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c: Fix signedness of ioctl request identifiers
for x86_64-freebsd.

2012-10-29  Yannick Moy  <moy@adacore.com>

* exp_alfa.adb (Expand_Alfa): Remove qualification of names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192937 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:32:18 +0000 (11:32 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb: Minor reformatting.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Minor rewording.

2012-10-29  Javier Miranda  <miranda@adacore.com>

* exp_disp.ads (Is_Expanded_Dispatching_Call): New subprogram.
* exp_disp.adb (Expand_Dispatching_Call): No action needed if the
call has been already expanded.
(Is_Expanded_Dispatching_Call): New subprogram.
* sem_disp.adb (Propagate_Tag): No action needed if the call
has been already expanded.

2012-10-29  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch9.adb (Create_Index_And_Data): Remove local
variable Index_Typ and its uses. The type of the index is now
System.Tasking.Entry_Index. Update all related comments.
* rtsfind.ads: Add RE_Entry_Index in tables RE_Id and RE_Unit_Table.
* s-taskin.adb (Number_Of_Entries): The return type is now Entry_Index.
* s-taskin.ads: The index type of Task_Entry_Names_Array is now
Entry_Index.
(Number_Of_Entries): The return type is now Entry_Index.
* s-tpoben.adb (Number_Of_Entries): The return type is now Entry_Index.
* s-tpoben.ads: The index type of Protected_Entry_Names_Array
is now Entry_Index.
(Number_Of_Entries): The return type is now Entry_Index.

2012-10-29  Pascal Obry  <obry@adacore.com>

* gnat_ugn.texi: Add note about SEH setup on x86-windows.

2012-10-29  Eric Botcazou  <ebotcazou@adacore.com>

* s-bignum.adb (Allocate_Bignum): Use the exact layout of
Bignum_Data for the overlay.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192936 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Oct 2012 11:21:57 +0000 (11:21 +0000)] 
2012-10-29  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi, sem_prag.adb, sem_util.adb, sem_util.ads,
par-prag.adb, par-util.adb, snames.ads-tmpl (Sem_Prag.Analyze_Pragma):
Handle new pragma Attribute_Definition.
(Sem_Util.Bad_Attribute): New routine, moved here
from par-util, so that it can be used by the above.
(Par_Util.Signal_Bad_Attribute): Processing moved to
Sem_Util.Bad_Attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192935 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:19:30 +0000 (11:19 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* s-tpoben.ads, s-taskin.ads, exp_ch3.adb: Minor reformatting.

2012-10-29  Yannick Moy  <moy@adacore.com>

* sem_prag.adb, gnat1drv.adb, opt.ads: Rename S14_Extensions
into Formal_Extensions.

2012-10-29  Thomas Quinot  <quinot@adacore.com>

* sem_attr.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192934 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 29 Oct 2012 11:09:46 +0000 (11:09 +0000)] 
2012-10-29  Tristan Gingold  <gingold@adacore.com>

* gnat_rm.texi: Document implementation advice for Pragma
Partition_Elaboration_Policy.

2012-10-29  Yannick Moy  <moy@adacore.com>

* s-bignum.adb (Div_Rem): Reference that Algorithm_D is from
the second edition of TAOCP from Knuth, since the algo changed
in the third edition. Also correct the definition of 'd' which
could overflow.

2012-10-29  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch3.adb (Build_Initialization_Call): Create static strings
which denote entry [family] names and associate them with the
object's Protection_Entries or ATCB.
(Build_Init_Statements):
Remove local variable Names. Do not generate the entry [family]
names inside the init proc because they are now static.
* exp_ch9.adb (Build_Entry_Names): Reimplemented. The strings
which denote entry [family] names are now generated statically
and associated with the concurrent object's Protection_Entries
or ATCB during initialization.
* exp_ch9.ads (Build_Entry_Names): Change subprogram profile
and associated comment on usage.
* rtsfind.ads: Add the following entries to tables RE_Id and
RE_Unit_Table:

RE_Protected_Entry_Names_Array RE_Task_Entry_Names_Array
RO_PE_Number_Of_Entries RO_PE_Set_Entry_Names
RO_ST_Number_Of_Entries RO_ST_Set_Entry_Names

Remove the following entries from tables RE_Id and RE_Unit_Table:

RO_PE_Set_Entry_Name RO_TS_Set_Entry_Name

* s-taskin.adb: Remove with clause for Ada.Unchecked_Deallocation.
(Free_Entry_Names_Array): Removed.
(Number_Of_Entries): New routine.
(Set_Entry_Names): New routine.
* s-taskin.ads: Rename type Entry_Names_Array to
Task_Entry_Names_Array. Rename type Entry_Names_Array_Access
to Task_Entry_Names_Access. Update the type of ACTB field
Entry_Names and add a comment on its protection status.
(Free_Entry_Names_Array): Removed.
(Number_Of_Entries): New routine.
(Set_Entry_Names): New routine.
* s-tassta.adb (Create_Task): Remove formal parameter
Build_Entry_Names. Do not allocate an array to hold the
string names of entries and families.
(Free_Entry_Names): Removed.
(Free_Task): Remove the call to Free_Entry_Names.
(Set_Entry_Name): Removed.
(Vulnerable_Free_Task): Remove the call to Free_Entry_Names.
* s-tassta.ads (Create_Task): Remove formal parameter
Build_Entry_Names along with associated comment.
(Set_Entry_Name): Removed.
* s-tpoben.adb: Remove with clause for Ada.Unchecked_Deallocation.
(Finalize): Remove the call to Free_Entry_Names.
(Free_Entry_Names): Removed.
(Initialize_Protection_Entries):
Remove formal parameter Build_Entry_Names. Do not allocate
an array to hold the string names of entries and families.
(Number_Of_Entries): New routine.
(Set_Entry_Name): Removed.
(Set_Entry_Names): New routine.
* s-tpoben.ads: Add types Protected_Entry_Names_Array and
Protected_Entry_Names_Access. Update the type of Protection_Enties
field Entry_Names.
(Initialize_Protection_Entries): Remove
formal parameter Build_Entry_Names along with associated comment.
(Number_Of_Entries): New routine.
(Set_Entry_Name): Removed.
(Set_Entry_Names): New routine.

2012-10-29  Arnaud Charlet  <charlet@adacore.com>

* gnat_ugn.texi: Minor typo fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192933 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * Revert my last commit.
uros [Mon, 29 Oct 2012 11:08:42 +0000 (11:08 +0000)] 
* Revert my last commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192932 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Yannick Moy <moy@adacore.com>
charlet [Mon, 29 Oct 2012 11:07:12 +0000 (11:07 +0000)] 
2012-10-29  Yannick Moy  <moy@adacore.com>

* debug.adb Associate debug switch -gnatd.V to extensions for
formal verification.
* gnat1drv.adb (Adjust_Global_Switches): Set flag S14_Extensions
when -gnatd.V is set.
* gnat_rm.texi: Remove doc for Assert_And_Cut.
* opt.ads Declare new flag S14_Extensions, to be set when new
aspects/pragmas/attributes for formal verification should be
accepted.
* sem_prag.adb (Analyze_Pragma): Check that S14_Extensions is
set when treating pragma Assert_And_Cut.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* s-tarest.ads, s-tassta.adb: Add a pragma Partition_Elaboration_Policy.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192931 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:04:55 +0000 (11:04 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* freeze.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192930 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 11:03:27 +0000 (11:03 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* xr_tabls.adb, xr_tabls.ads, exp_ch9.adb, snames.adb-tmpl,
snames.ads-tmpl, exp_ch3.adb: Minor reformatting.

2012-10-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb: Call Build_Subprogrm_Instance_Renamings only when
generating code.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add documentation for -gnatw.k/-gnatw.K.
* ug_words: Add entries for -gnatw.k/.K for [NO]STANDARD_REDEFINITION.
* vms_data.ads: Add entries for [NO]STANDARD_REDEFINITION.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192929 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 29 Oct 2012 11:00:17 +0000 (11:00 +0000)] 
2012-10-29  Tristan Gingold  <gingold@adacore.com>

* exp_ch9.adb, s-tarest.ads, exp_ch3.adb: Update comments.

2012-10-29  Yannick Moy  <moy@adacore.com>

* gnat_rm.texi: Minor documentation addition.

2012-10-29  Emmanuel Briot  <briot@adacore.com>

* xr_tabls.adb, xr_tabls.ads (Add_Declaration, Add_Reference): No
longer assume that a parameter declaration is seen after the subprogram
that uses it.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* lib-writ.adb (Write_ALI): Emit partition elaboration policy
in P line.
* lib-writ.ads: Document partition elaboration policy indication.
* sem_prag.adb (Check_Arg_Is_Partition_Elaboration_Policy): New
procedure.
(Analyze_Pragma): Handle Partition_Elaboration_Policy.
(Sig_Flags): Add flag for Pragma_Partition_Elaboration_Policy
* ali.adb (Initialize_ALI): Init Partition_Elaboration_Policy_Specified.
(Scan_ALI): Read Ex indications.
* ali.ads: ALIs_Record: Add Partition_Elaboration_Policy.
* par-prag.adb (Prag): Add Partition_Elaboration_Policy.
* snames.adb-tmpl (Is_Partition_Elaboration_Policy_Name): New function.
* opt.ads (Partition_Elaboration_Policy): Declare.
(Partition_Elaboration_Policy_Sloc): Declare.
* bcheck.adb (Check_Consistent_Partition_Elaboration_Policy):
New procedure. (Check_Configuration_Consistency): Check partition
elaboration policy consistency.
* snames.ads-tmpl (Name_Partition_Elaboration_Policy): New name.
(First_Partition_Elaboration_Policy_Name, Name_Concurrent,
Name_Sequential, Last_Partition_Elaboration_Policy_Name): Likewise.
(Pragma_Partition_Elaboration_Policy): New literal.
(Is_Partition_Elaboration_Policy_Name): New function.

2012-10-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Is_Public_Subprogram_For): Handle properly
expression functions, which are rewritten as subprogram
declarations, when generating invariants for its return value
and in-out parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192928 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Oct 2012 10:56:44 +0000 (10:56 +0000)] 
2012-10-29  Arnaud Charlet  <charlet@adacore.com>

* warnsw.adb (Set_GNAT_Mode_Warnings): Unset
Warn_On_Standard_Redefinition.

2012-10-29  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Derive_Progenitor_Subprograms): Complete documentation.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* par-ch11.adb (Warn_If_Standard_Redefinition): Add calls.
* par-ch3.adb (P_Defining_Identifier): Call
Warn_If_Standard_Redefinition if not inside record definition.
* par-ch6.adb (Warn_If_Standard_Redefinition): Add calls.
* par-util.adb (Warn_If_Standard_Redefinition): New procedure.
* par.adb (Inside_Record_Definition): New flag.
(Warn_If_Standard_Redefinition): New procedure.
* sinfo-cn.adb (Change_Identifier_To_Defining_Identifier): Remove
handling of warning for redefining standard name (moved to Par*).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192927 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Javier Miranda <miranda@adacore.com>
charlet [Mon, 29 Oct 2012 10:54:45 +0000 (10:54 +0000)] 
2012-10-29  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Derive_Progenitor_Subprograms): Disable small
optimization in generic formal types.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb, exp_ch3.adb: Add comments.
* sem_prag.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192926 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 29 Oct 2012 10:52:28 +0000 (10:52 +0000)] 
2012-10-29  Tristan Gingold  <gingold@adacore.com>

* bindgen.adb (Gen_Output_File_Ada): Do not emit declaration for
Is_Elaborated if not referenced.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* exp_ch9.adb (Build_Activation_Chain_Entity): Punt in restricted
profile.
* exp_ch3.adb (Build_Initialization_Call): Do no append _Chain
parameter in restricted profile.
(Build_Init_Call_Thru): Likewise.
(Init_Formals): Likewise.
* exp_ch3.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192925 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Oct 2012 10:50:12 +0000 (10:50 +0000)] 
2012-10-29  Arnaud Charlet  <charlet@adacore.com>

* usage.adb: Update usage line for -gnatw.k.

2012-10-29  Yannick Moy  <moy@adacore.com>

* sem_prag.adb: Code clean up.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192924 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Arnaud Charlet <charlet@adacore.com>
charlet [Mon, 29 Oct 2012 10:48:00 +0000 (10:48 +0000)] 
2012-10-29  Arnaud Charlet  <charlet@adacore.com>

* s-win32.ads: Kill potential warning.

2012-10-29  Yannick Moy  <moy@adacore.com>

* gnat_rm.texi: Describe new pragma Assert_And_Cut.
* par-prag.adb, sem_prag.adb, snames.ads-tmpl: Add new pragma
and treat it like pragma Assert.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192923 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Vincent Celier <celier@adacore.com>
charlet [Mon, 29 Oct 2012 10:41:40 +0000 (10:41 +0000)] 
2012-10-29  Vincent Celier  <celier@adacore.com>

* projects.texi: Clarify documentation of attribute
Ignore_Source_Sub_Dirs.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* g-sechas.adb, g-sechas.ads, exp_ch9.adb, bindgen.adb, exp_dbug.adb,
exp_dbug.ads: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192922 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Pascal Obry <obry@adacore.com>
charlet [Mon, 29 Oct 2012 10:26:36 +0000 (10:26 +0000)] 
2012-10-29  Pascal Obry  <obry@adacore.com>

* g-sechas.adb, g-sechas.ads: (Binary_Message_Digest): New subtype.
(Digest): New versions returning a Binary_Message_Digest.
(Wide_Digest): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192921 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 10:21:52 +0000 (10:21 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* warnsw.adb: Complete previous change.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* bindgen.adb (Check_File_In_Partition, Check_System_Restrictions_Used):
Removed.
(Check_Dispatching_Domains_Used): Removed.
(Gen_Adafinal): Remove call to above procedures.
(Resolve_Binder_Options): Handle system restrictions and dispatching
domains.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Remove
Chain parameter.
* exp_ch9.adb (Make_Task_Create_Call): Do not add Chain parameter
on restricted runtime.

2012-10-29  Pascal Obry  <obry@adacore.com>

* g-sechas.adb, g-sechas.ads: Minor code clean-up.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192920 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 29 Oct 2012 10:17:29 +0000 (10:17 +0000)] 
2012-10-29  Ed Schonberg  <schonberg@adacore.com>

* sem_aux.adb (Get_Rep_Item): Treat Priority and Interrupt_Priority
as equivalent, because only one of them can be specified for a
task, protected definition, or subprogram body.
* aspects.adb ((Same_Aspect): The canonical aspect of
Interrupt_Priority is Priority.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb: Minor reformatting.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* i-cstrea.ads: Avoid redefinition of standard symbol string.
* prj-makr.adb: Add comment for OK redefinition of Stadard.
* prj.ads: Add comment for OK redefinition of Stadard.
* s-crtl.ads: Avoid redefinition of standard symbol string.
* sinfo-cn.adb (Change_Identifier_To_Defining_Identifier):
Generate warning for standard redefinition if
Warn_On_Standard_Definition set.
* usage.adb: Add lines for -gnatw.k and -gnatw.K
* warnsw.adb: Set/reset Warn_On_Standard_Redefinition
appropriately.
* warnsw.ads (Warn_On_Standard_Redefinition): New flag.
* s-stratt-xdr.adb: Avoid new warning.

2012-10-29  Ed Schonberg  <schonberg@adacore.com>

* exp_dbug.ads, exp_dbug.adb (Build_Subprogram_Instance_Renamings):
in the body of a subpogram instance, introduce local renamings
for actuals of an elementary type, so that GDB can recover the
values of these actuals more directly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192919 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Robert Dewar <dewar@adacore.com>
charlet [Mon, 29 Oct 2012 10:07:33 +0000 (10:07 +0000)] 
2012-10-29  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb (Analyze_Loop_Statement): Add warning for identical
inner/outer ranges.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Change terminology "present" to "defined" in talking
about whether a given field is defined for a given entity kind.

2012-10-29  Bob Duff  <duff@adacore.com>

* atree.ads: Minor comment fix.

2012-10-29  Bob Duff  <duff@adacore.com>

* sem_ch13.adb (Replace_Type_Reference): Set_Comes_From_Source.
Otherwise, the node is ignored by ASIS.
* sem_ch5.adb: Minor reformatting.

2012-10-29  Thomas Quinot  <quinot@adacore.com>

* exp_attr.adb, exp_dist.adb, exp_dist.ads (Build_To_Any_Call): Pass
an explicit Loc parameter to set the source location of generated
nodes.

2012-10-29  Tristan Gingold  <gingold@adacore.com>

* exp_ch9.adb (Build_Task_Activation_Call): Do nothing on
restricted profile.
* bindgen.adb (System_Tasking_Restricted_Stages_Used): New variable.
(Gen_Adainit): Declare and call Activate_Tasks when the above variable
is set.
(Resolve_Binder_Options): Set the variable.
* rtsfind.ads (RE_Activate_Restricted_Tasks): Removed (now unused).
* s-tarest.adb (Tasks_Activation_Chain): New variable.
(Activate_Restricted_Tasks): Removed, and replaced by ...
(Activate_Tasks): New procedure, to activate all tasks at
the end of elaboration.
(Create_Restricted_Tasks): Chain parameter is now unreferenced. Put
the created task on the Tasks_Activation_Chain list.
* s-tarest.ads (Activate_Restricted_Tasks): Removed.
(Activate_Tasks): Added.

2012-10-29  Gary Dismukes  <dismukes@adacore.com>

* sem_res.adb (Resolve_If_Expression): Compare subtype of the 'then'
expression against the subtype of the expression rather than comparing
base types, same as is already done for the 'else' expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192918 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Steve Baird <baird@adacore.com>
charlet [Mon, 29 Oct 2012 10:02:16 +0000 (10:02 +0000)] 
2012-10-29  Steve Baird  <baird@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If CodePeer_Mode
= True and we detect that an Address specification is used to overlay
another object, do not set that object's Treat_As_Volatile flag.

2012-10-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Constant_Redeclaration): If the type of a
deferred constant has invariants, generate invariant call on
the initial value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192917 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Bob Duff <duff@adacore.com>
charlet [Mon, 29 Oct 2012 10:00:24 +0000 (10:00 +0000)] 
2012-10-29  Bob Duff  <duff@adacore.com>

* sem_ch13.adb (Replace_Type_Reference): Use correct sloc for
the new node.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192916 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 29 Oct 2012 09:58:27 +0000 (09:58 +0000)] 
2012-10-29  Thomas Quinot  <quinot@adacore.com>

* sem_elab.adb: Minor reformatting and code reorganization.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* par-ch4.adb (P_Primary): Warn on bad use of unary minus.

2012-10-29  Robert Dewar  <dewar@adacore.com>

* s-valuti.ads, s-valuti.adb (Bad_Value): New procedure.
* s-valllu.adb, s-valwch.adb, s-valcha.adb, s-valint.adb,
s-valuns.adb, s-valrea.adb, s-valboo.adb, s-valenu.adb,
s-vallli.adb: Use Bad_Value everywhere.

2012-10-29  Yannick Moy  <moy@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Do not suppress checks
in Alfa mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192915 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-10-29 Yannick Moy <moy@adacore.com>
charlet [Mon, 29 Oct 2012 09:55:29 +0000 (09:55 +0000)] 
2012-10-29  Yannick Moy  <moy@adacore.com>

* checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated):
Add special case for case expression alternative.
(Is_Signed_Integer_Arithmetic_Op): Remove special case for case
expression alternative.
* exp_ch4.adb Minor reformatting.

2012-10-29  Thomas Quinot  <quinot@adacore.com>

* sem_elab.adb: Minor reformatting.

2012-10-29  Bob Duff  <duff@adacore.com>

* sem_res.adb: Minor: Remove redundant test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192914 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * adabkend.ads, adabkend.adb, aa_util.ads, aa_util.adb: New.
charlet [Mon, 29 Oct 2012 09:50:53 +0000 (09:50 +0000)] 
* adabkend.ads, adabkend.adb, aa_util.ads, aa_util.adb: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192913 138bc75d-0d04-0410-961f-82ee72b054a4