platform/upstream/linaro-gcc.git
12 years agogcc/cp
paolo [Thu, 17 May 2012 10:29:46 +0000 (10:29 +0000)]
gcc/cp
2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44516
* typeck.c (build_x_array_ref, build_x_conditional_expr,
build_x_compound_expr, build_x_modify_expr): Add location_t parameter.
(finish_class_member_access_expr, build_x_indirect_ref,
build_x_binary_op, build_x_compound_expr_from_list,
build_x_compound_expr_from_vec): Adjust callers.
* tree.c (build_min_nt_loc): New.
(build_min_nt): Remove.
* typeck2.c (build_x_arrow): Adjust callers.
* pt.c (tsubst_qualified_id, tsubst_omp_for_iterator,
tsubst_copy_and_build): Likewise.
* semantics.c (finish_mem_initializers, handle_omp_for_class_iterator,
 finish_omp_atomic): Likewise.
* decl2.c (grok_array_decl, build_anon_union_vars): Adjust.
* parser.c (cp_parser_question_colon_clause,
cp_parser_assignment_expression, cp_parser_expression,
cp_parser_template_id, cp_parser_omp_for_loop): Likewise.
* cp-tree.h: Update.

gcc/testsuite
2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44516
* g++.dg/parse/error48.C: New.
* g++.dg/template/crash89.C: Adjust dg-error line numbers.
* g++.old-deja/g++.robertl/eb109.C: Add column info to dg-error string.

libstdc++
2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44516
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
dg-error line number.

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

12 years ago * ipa-reference.c (is_proper_for_analysis): Do not check flags
hubicka [Thu, 17 May 2012 09:22:02 +0000 (09:22 +0000)]
* ipa-reference.c (is_proper_for_analysis): Do not check flags
that might change as result of global optimization.
(analyze_function): Do not check analyzed and externally_visible
flags; be happy about address dereferences.
(propagate): Prune all_module_statics so it really contains just
statics; prune all the local summaries.
(ipa_reference_write_optimization_summary): Simplify.

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

12 years ago * config/m68k/m68k-devices.def: Add 51ag, 51je, 51jf, 51jg, 51mm,
nathan [Thu, 17 May 2012 09:13:35 +0000 (09:13 +0000)]
* config/m68k/m68k-devices.def: Add 51ag, 51je, 51jf, 51jg, 51mm,
51qm.
* config/m68k/m68k-tables.opt: Regenerated.
* doc/invoke.texi (M680x0 Options): Document.

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

12 years agoruntime: Print stack trace on panic or signal.
ian [Thu, 17 May 2012 05:30:25 +0000 (05:30 +0000)]
runtime: Print stack trace on panic or signal.

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

12 years ago2012-05-16 Dave Boutcher <daveboutcher@gmail.com>
pmarlier [Thu, 17 May 2012 02:57:56 +0000 (02:57 +0000)]
2012-05-16  Dave Boutcher  <daveboutcher@gmail.com>
    Patrick Marlier  <patrick.marlier@gmail.com>

* trans-mem.c (ipa_tm_transform_clone): Transform functions with
indirect calls.

testsuite/
2012-05-16  Patrick Marlier  <patrick.marlier@gmail.com>

* gcc.dg/tm/indirect-2.c: New test.

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

12 years agoDaily bump.
gccadmin [Thu, 17 May 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.

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

12 years agoRegenerate configure files for libtool.m4 change
hjl [Wed, 16 May 2012 22:11:18 +0000 (22:11 +0000)]
Regenerate configure files for libtool.m4 change

boehm-gc/

* configure: Regenerated.

gcc/

* configure: Regenerated.

libatomic/

* configure: Regenerated.

libffi/

* configure: Regenerated.

libgfortran/

* configure: Regenerated.

libgomp/

* configure: Regenerated.

libitm/

* configure: Regenerated.

libjava/classpath/

* configure: Regenerated.

libjava/

* configure: Regenerated.

libmudflap/

* configure: Regenerated.

libobjc/

* configure: Regenerated.

libquadmath/

* configure: Regenerated.

libssp/

* configure: Regenerated.

libstdc++-v3/

* configure: Regenerated.

lto-plugin/

* configure: Regenerated.

zlib/

* configure: Regenerated.

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

12 years ago2012-05-16 Andrew Pinski <apinski@cavium.com>
pinskia [Wed, 16 May 2012 20:22:03 +0000 (20:22 +0000)]
2012-05-16  Andrew Pinski  <apinski@cavium.com>

* gimple-fold.c (get_maxval_strlen): Move COND_EXPR handling under
GIMPLE_ASSIGN.

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

12 years agoFix var tracking ICE due to reorg.
davem [Wed, 16 May 2012 20:11:46 +0000 (20:11 +0000)]
Fix var tracking ICE due to reorg.

If during reorg we delete a code label, and as a result we decide to
delete all the code following that label, we hit this condition in
jump.c:delete_related_insns():

  if (was_code_label && prev && BARRIER_P (prev))

which passes and then we proceed to delete insns until we hit a
non-deleted code label.

During this traversal, we can end up deleting a CALL, but in doing so
we will leave the var tracking note for the call arguments around.

Later in dwarf2_var_location() we will ICE, because we can't find the
CALL when we search backwards for it.

The note searching scheme in the fix below is cribbed from code in
try_split() which has to handle a similar problem.

gcc/

* jump.c (delete_related_insns): If we remove a CALL, make sure
we delete it's NOTE_INSN_CALL_ARG_LOCATION note too.

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

12 years ago2012-05-16 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 16 May 2012 18:39:34 +0000 (18:39 +0000)]
2012-05-16  Tobias Burnus  <burnus@net-b.de>

        * io/unix.c (tempfile_open): Pass mode to "open" for O_CREAT.

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

12 years ago libgcc/
hainque [Wed, 16 May 2012 15:36:08 +0000 (15:36 +0000)]
    libgcc/
        * Makefile.in (install-unwind_h): Rename into ...
        (install-unwind_h-forbuild): New target.
        (all): Use it instead of the former install-unwind_h.
        (install-unwind_h): Reinstate, copy to user install destination
        for include files, not to the internal gcc object directory one.
        (install-leaf): Depend on it.

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

12 years agolog/syslog: Fix name of C function syslog_c.
ian [Wed, 16 May 2012 14:52:03 +0000 (14:52 +0000)]
log/syslog: Fix name of C function syslog_c.

From Rainer Orth.

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

12 years agogcc:
wschmidt [Wed, 16 May 2012 14:39:32 +0000 (14:39 +0000)]
gcc:

2012-05-16  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/53217
* tree-ssa-reassoc.c (bip_map): New static variable.
(possibly_move_powi): Move feeding multiplies with __builtin_powi call.
(attempt_builtin_powi): Save feeding multiplies on a stack.
(reassociate_bb): Create and destroy bip_map.

gcc/testsuite:

2012-05-16  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/53217
* gfortran.dg/pr53217.f90: New test.

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

12 years ago toplevel/
hainque [Wed, 16 May 2012 13:37:14 +0000 (13:37 +0000)]
toplevel/
* Makefile.tpl (gcc-no-fixedincludes): Rename into ...
(gcc-install-no-fixedincludes): Now forwarder to local target in gcc/
(install-no-fixedincludes): Adjust accordingly.
* Makefile.in: Regenerate.

gcc/
* Makefile.in (install-no-fixedincludes): New target, former toplevel
gcc-no-fixedincludes. Stash "include-fixed" in addition to "include".
Add comments and improve stamp preservation across the whole sequence.
(stmp-int-hdrs): Use move-if-change + cp -p to setup fix_dir/limits.h.

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

12 years ago2012-05-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 May 2012 13:36:07 +0000 (13:36 +0000)]
2012-05-16  Richard Guenther  <rguenther@suse.de>

* tree-inline.c (insert_init_stmt): Do not call
mark_symbols_for_renaming.
(setup_one_parameter): Avoid initializing unused parameters.
(declare_return_variable): Properly handle DECL_BY_REFERENCE
return vars in SSA form.

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

12 years ago2012-05-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 May 2012 13:31:39 +0000 (13:31 +0000)]
2012-05-16  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (get_virtual_var): Remove.
* tree-dfa.c (get_virtual_var): Likewise.

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

12 years ago2012-05-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 May 2012 13:21:38 +0000 (13:21 +0000)]
2012-05-16  Richard Guenther  <rguenther@suse.de>

* tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1):
Remove set-only bitmap of new names.
(slpeel_tree_peel_loop_to_edge): Likewise.  Do not set
CFG hooks.
* tree-flow.h (ssa_names_to_replace): Remove.
* tree-into-ssa.c (ssa_names_to_replace): Likewise.

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

12 years ago2012-05-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 May 2012 13:11:01 +0000 (13:11 +0000)]
2012-05-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53364
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Properly
detect a view-conversion of the decl.

* g++.dg/torture/pr53364.C: New testcase.

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

12 years ago PR testsuite/52641
gjl [Wed, 16 May 2012 12:46:36 +0000 (12:46 +0000)]
PR testsuite/52641
* gcc.dg/pr52549.c: Fix test for long != void*
* gcc.c-torture/execute/pr52979-1.x: New file.
* gcc.c-torture/execute/pr52979-2.x: New file.

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

12 years agoPR preprocessor/7263 - Avoid pedantic warnings on system headers macro tokens
dodji [Wed, 16 May 2012 10:51:15 +0000 (10:51 +0000)]
PR preprocessor/7263 - Avoid pedantic warnings on system headers macro tokens

Now that we track token locations accross macro expansions, it would
be cool to be able to fix PR preprocessor/7263 for real.  That is,
consider this example where we have a system header named header.h
like this:

#define _Complex __complex__ #define _Complex_I 1.0iF

and then a normal C file like this:

    #include "header.h"

    static _Complex float c = _Complex_I;

If we compile the file with -pedantic, the usages of _Complex or
_Complex_I should not trigger any warning, even though __complex__ and
the complex literal are extensions to the standard C.

They shouldn't trigger any warning because _Complex and _Complex_I are
defined in a system header (and expanded in normal user code).

To be able to handle this, we must address two separate concerns.

First, warnings about non-standard usage of numerical literals are emitted
directly from within libcpp.  So we must teach libcpp's parser for numerical
literals to use virtual locations, instead of the spelling
location it uses today.  Once we have that, as the diagnostics machinery
already knows how to avoid emitting errors happening on tokens that come from
system headers, we win.

Second, there is the issue of tracking locations for declaration
specifiers, like the "_Complex" in the declaration:

static _Complex float c;

For that, we need to arrange for each possible declaration specifier
to have its own location, because otherwise, we'd warn on e.g, on:

    _Complex float c;

but not on:

    static _Complex float c;

So this patch addresses the two concerns above.  It's actually a
follow-up on an earlier patch[1] I wrote as part of my initial work on
virtual locations.  We then agreed[2] that the second concern was
important to address before the patch could get a chance to go in.

[1]: http://gcc.gnu.org/ml/gcc-patches/2011-09/msg00957.html
[2]: http://gcc.gnu.org/ml/gcc-patches/2011-10/msg00264.html

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

libcpp/

PR preprocessor/7263
* include/cpplib.h (cpp_classify_number): Take a location
parameter.
* expr.c (SYNTAX_ERROR_AT, SYNTAX_ERROR2_AT): New diagnostic
macros that take a location parameter.
(cpp_classify_number): Take a (virtual) location parameter.  Use
it for diagnostics.  Adjust comments.
(eval_token): Take a location parameter.  Pass it to
cpp_classify_number and to diagnostic routines.
(_cpp_parse_expr): Use virtual locations of tokens when parsing
expressions.  Pass a virtual location to eval_token and to
diagnostic routines.

gcc/c-family/

PR preprocessor/7263
* c-lex.c (c_lex_with_flags):  Pass a virtual location to the call
to cpp_classify_number.  For diagnostics, use the precise location
instead of the global input_location.

gcc/
PR preprocessor/7263
* c-tree.h (enum c_declspec_word): Declare new enum.
(struct c_declspecs::locations): New member.
(declspecs_add_qual, declspecs_add_scspec)
(declspecs_add_addrspace, declspecs_add_alignas): Take a new
location parameter.
* c-decl.c (build_null_declspecs): Initialize the new struct
c_declspecs::locations member.
(declspecs_add_addrspace): Take a location parameter for the
address space.  Store it onto declaration specifiers.
(declspecs_add_qual): Likewise, take a location parameter for the
qualifier.
(declspecs_add_type): Likewise, take a location parameter for the
type specifier.
(declspecs_add_scspec): Likewise, take a location parameter for
the storage class specifier.
(declspecs_add_attrs): Likewise, take a location parameter for the
first attribute.
(declspecs_add_alignas): Likewise, take a location parameter for
the alignas token.
(finish_declspecs): For diagnostics, use the location of the
relevant declspec, instead of the global input_location.
* c-parser.c (c_parser_parameter_declaration): Pass the precise
virtual location of the declspec to the declspecs-setters.
(c_parser_declspecs): Likewise.  Avoid calling c_parser_peek_token
repeatedly.

gcc/cp/

PR preprocessor/7263
* cp-tree.h (enum cp_decl_spec): Add new enumerators to cover all
the possible declarator specifiers so far.
(struct cp_decl_specifier_seq::locations): Declare new member.
(cp_decl_specifier_seq::{specs, type_location}): Remove.
(decl_spec_seq_has_spec_p): Declare new function.
* parser.c (cp_parser_check_decl_spec): Remove.
(set_and_check_decl_spec_loc): Define new static function.
(decl_spec_seq_has_spec_p): Define new public function.
(cp_parser_decl_specifier_seq, cp_parser_function_specifier_opt)
(cp_parser_type_specifier, cp_parser_simple_type_specifier)
(cp_parser_set_storage_class, cp_parser_set_decl_spec_type)
(cp_parser_alias_declaration): Set the locations for each
declspec, using set_and_check_decl_spec_loc.
(cp_parser_explicit_instantiation, cp_parser_init_declarator)
(cp_parser_member_declaration, cp_parser_init_declarator): Use the
new declspec location for specifiers.  Use the new
decl_spec_seq_has_spec_p.
(cp_parser_type_specifier_seq): Use the new
set_and_check_decl_spec_loc.  Stop using
cp_parser_check_decl_spec.  Use the new decl_spec_seq_has_spec_p.
(, cp_parser_init_declarator): Use the new
set_and_check_decl_spec_loc.
(cp_parser_single_declaration, cp_parser_friend_p)
(cp_parser_objc_class_ivars, cp_parser_objc_struct_declaration):
Use the new decl_spec_seq_has_spec_p.
* decl.c (check_tag_decl): Use new decl_spec_seq_has_spec_p.  Use
the more precise ds_redefined_builtin_type_spec location for
diagnostics about re-declaring C++ built-in types.
(start_decl, grokvardecl, grokdeclarator): Use the new
decl_spec_seq_has_spec_p.

gcc/testsuite/

PR preprocessor/7263
* gcc.dg/binary-constants-2.c: Run without tracking locations
accross macro expansion.
* gcc.dg/binary-constants-3.c: Likewise.
* gcc.dg/cpp/sysmac2.c: Likewise.
* testsuite/gcc.dg/nofixed-point-2.c: Adjust for more precise
location.
* gcc.dg/cpp/syshdr3.c: New test.
* gcc.dg/cpp/syshdr3.h: New header for the new test above.
* gcc.dg/system-binary-constants-1.c: New test.
* gcc.dg/system-binary-constants-1.h: New header for the new test
above.
* g++.dg/cpp/syshdr3.C: New test.
* g++.dg/cpp/syshdr3.h: New header the new test above.
* g++.dg/system-binary-constants-1.C: New test.
* g++.dg/system-binary-constants-1.h: New header the new test
above.

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

12 years ago * configure.ac: Stack protector enabling for Android targets.
kyukhin [Wed, 16 May 2012 09:59:04 +0000 (09:59 +0000)]
    * configure.ac: Stack protector enabling for Android targets.
        * configure: Regenerate.

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

12 years ago * config/rs6000/e500-double.h: Really remove.
hainque [Wed, 16 May 2012 09:21:27 +0000 (09:21 +0000)]
    * config/rs6000/e500-double.h: Really remove.

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

12 years agogcc/
rsandifo [Wed, 16 May 2012 09:01:54 +0000 (09:01 +0000)]
gcc/
* ira.c (pseudo_move_insn): Delete.
(find_moveable_pseudos): Don't set it.
(move_unallocated_pseudos): Use DF_REG_DEF_CHAIN to find
the definitions of the original pseudo.  Delete all of them.

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

12 years ago * config/rs6000/rs6000-opts.h (enum processor_type): Add
hainque [Wed, 16 May 2012 08:43:41 +0000 (08:43 +0000)]
    * config/rs6000/rs6000-opts.h (enum processor_type): Add
        PROCESSOR_PPC8548.
        * config/rs6000/rs6000-cpus.def: Reference it for cpu="8548".
        * config/rs6000/rs6000.md (cpu attribute definition): Add ppc8548.
        * config/rs6000/8540.md: indicate that the units/patterns apply to
        ppc8548 as well.

        * config/rs6000/rs6000.c (rs6000_option_override_internal): Rename
        default_cpu into implicit_cpu, conveying what --with-cpu was passed at
        configure time. Treat implicit_cpu as have_CPU. Pick defaults for SPE
        related flags,  check that what is queried is supported by the selected
        configuration. Rework the single/double_float and MASK_STRING resets to
        hit for all the E500 cores (854x + E500MC variants). Select the ppc8540
        costs for PROCESSOR_PPC8548 as well.
        (rs6000_issue_rate): case CPU_PPC8548 together with CPU_PPC8540.
        (rs6000_use_sched_lookahead): Likewise, rewriting function as a case
        statement instead of a sequence of ifs.

        * config/rs6000/rs6000.h (TARGET_E500): Remove.
        (TARGET_NO_LWSYNC): Adjust accordingly.
        * config/rs6000/e500.h (TARGET_E500): Remove.
        (CHECK_E500_OPTIONS): Adjust accordingly.
        * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Remove.
        (TARGET_DEFAULT): Reformat definition to match the one in linuxspe.h.
        * config/rs6000/linuxspe.h: Likewise.
        * config/rs6000/vxworks.h: Remove bogus TARGET_E500 overrides and
        superfluous comments.
        * config/rs6000/e500-double.h: Remove.

        * config.gcc (pick a default with_cpu): For powerpc*-*-*spe*,
        default to with_cpu=8548 if --enable-e500-double, and to 8540
        otherwise.
        (set misc flags section): For powerpc*|rs6000*, remove inclusion
        of e500-double.h for --enable-e500-double.

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

12 years ago * Makefile.in (s-header-vars): Resort to -n instead of trailing
hainque [Wed, 16 May 2012 08:23:58 +0000 (08:23 +0000)]
   * Makefile.in (s-header-vars): Resort to -n instead of trailing
       -e d in sed invocation.

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

12 years agodebug/dwarf: Fix handling of LineSetFile.
ian [Wed, 16 May 2012 05:36:31 +0000 (05:36 +0000)]
debug/dwarf: Fix handling of LineSetFile.

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

12 years agocompiler: Fix assembler names of types defined in functions.
ian [Wed, 16 May 2012 00:26:32 +0000 (00:26 +0000)]
compiler: Fix assembler names of types defined in functions.

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

12 years agoDaily bump.
gccadmin [Wed, 16 May 2012 00:17:41 +0000 (00:17 +0000)]
Daily bump.

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

12 years ago * doc/tm.texi.in (Type Layout) <SIZE_TYPE>: Update reference to
hp [Tue, 15 May 2012 23:43:51 +0000 (23:43 +0000)]
* doc/tm.texi.in (Type Layout) <SIZE_TYPE>: Update reference to
source-code.
* doc/tm.texi: Regenerate.

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

12 years agocompiler: Fix taking address of constant outside of function.
ian [Tue, 15 May 2012 22:54:28 +0000 (22:54 +0000)]
compiler: Fix taking address of constant outside of function.

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

12 years agoFix date
ebotcazou [Tue, 15 May 2012 22:34:36 +0000 (22:34 +0000)]
Fix date

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

12 years ago PR ada/52494
ebotcazou [Tue, 15 May 2012 22:33:58 +0000 (22:33 +0000)]
PR ada/52494
* s-taprop-dummy.adb (Specific): New package.

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

12 years agocompiler: Sort array constructors by index.
ian [Tue, 15 May 2012 22:30:37 +0000 (22:30 +0000)]
compiler: Sort array constructors by index.

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

12 years ago2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 May 2012 22:19:08 +0000 (22:19 +0000)]
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

     * g++.old-deja/g++.pt/crash10.C: Adjust post PR11586.

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

12 years agocompiler: Don't try to take the address of a constant.
ian [Tue, 15 May 2012 20:00:39 +0000 (20:00 +0000)]
compiler: Don't try to take the address of a constant.

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

12 years ago2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 May 2012 19:44:49 +0000 (19:44 +0000)]
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

     * tree.h (EXPR_LOCATION): Use CAN_HAVE_LOCATION_P.

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

12 years agoAdd name of the functions impacted by the patch.
fdumont [Tue, 15 May 2012 19:34:45 +0000 (19:34 +0000)]
Add name of the functions impacted by the patch.

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

12 years agoruntime: Make all variables used across getcontext volatile.
ian [Tue, 15 May 2012 18:56:48 +0000 (18:56 +0000)]
runtime: Make all variables used across getcontext volatile.

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

12 years agoAdd x32 support to libtool.m4
hjl [Tue, 15 May 2012 16:07:28 +0000 (16:07 +0000)]
Add x32 support to libtool.m4

Merge upstream change
* libtool.m4 (_LT_ENABLE_LOCK): Support x32.

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

12 years ago PR target/53358
jakub [Tue, 15 May 2012 15:19:10 +0000 (15:19 +0000)]
PR target/53358
* config/i386/i386.md (*addqi_2 peephole with QImode addition): Check
that operands[2] is either immediate, or q_regs_operand.

* gcc.dg/pr53358.c: New test.

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

12 years ago2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 May 2012 15:18:05 +0000 (15:18 +0000)]
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

     * Fix PR number in ChangeLog entries (11586 -> 11856).

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

12 years ago/cp
paolo [Tue, 15 May 2012 15:14:49 +0000 (15:14 +0000)]
/cp
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/11586
* pt.c (tsubst_copy_and_build): Increase / decrease
c_inhibit_evaluation_warnings around build_x_binary_op call.

/c-family
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/11586
* c-common.c (shorten_compare): Check c_inhibit_evaluation_warnings.

/testsuite
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/11586
* g++.dg/warn/Wtype-limits.C: Don't warn in templates.
* g++.dg/warn/Wtype-limits-Wextra.C: Likewise.

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

12 years ago libgcc/
hainque [Tue, 15 May 2012 14:03:04 +0000 (14:03 +0000)]
libgcc/
* config/rs6000/aix-unwind.h (*_REGNO): New, set of useful
register numbers. LR_REGNO replaces R_LR.
(ucontext_for): New, helper for ...
(ppc_aix_fallback_frame_state): New, implementation for aix 5.2
and 5.3 of ...
(MD_FALLBACK_FRAME_STATE_FOR): Define for 32bit configurations.

testsuite/
* g++.dg/eh/sighandle.C: New testcase.

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

12 years ago2012-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 15 May 2012 13:49:19 +0000 (13:49 +0000)]
2012-05-15  Richard Guenther  <rguenther@suse.de>

* cgraphunit.c (thunk_adjust): Use make_rename_temp.
(assemble_thunk): Likewise.  Manually rename and register
function arguments.

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

12 years ago2012-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 15 May 2012 13:18:32 +0000 (13:18 +0000)]
2012-05-15  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53355
* tree-vrp.c (extract_range_from_binary_expr_1): Handle LSHIFT_EXPRs
by constants.

* gcc.dg/tree-ssa/vrp67.c: New testcase.

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

12 years ago2012-05-15 Olivier Hainque <hainque@adacore.com>
charlet [Tue, 15 May 2012 12:20:03 +0000 (12:20 +0000)]
2012-05-15  Olivier Hainque  <hainque@adacore.com>

* gcc-interface/Make-lang.in (COMMON_FLAGS_TO_PASS): Use WARN_CFLAGS
instead of trying to mimic it.

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

12 years ago2012-05-15 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 May 2012 12:16:20 +0000 (12:16 +0000)]
2012-05-15  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb, sem_util.adb, s-stposu.adb, exp_ch4.adb: Minor
reformatting.

2012-05-15  Geert Bosch  <bosch@adacore.com>

* uintp.adb (UI_Rem): Remove optimizations, as they are complex and are
not needed.
(Sum_Digits): Remove, no longer used.
(Sum_Double_Digits): Likewise.

2012-05-15  Yannick Moy  <moy@adacore.com>

* aspects.ads: Minor typo.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi (Scalar_Storage_Order): Fix RM reference.
* sem_ch13.adb: Minor comment fix: incorrect RM reference.

2012-05-15  Eric Botcazou  <ebotcazou@adacore.com>

* sem_prag.adb (Process_Atomic_Shared_Volatile): Propagate
atomicity from an object to its underlying type only if it
is composite.

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

12 years ago2012-05-15 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 May 2012 12:11:10 +0000 (12:11 +0000)]
2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Set kind of
loop variable after pre-analysis of iterator name, to prevent
premature usage of loop variable.

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_Variable): In Ada 2012, an explicit
dereference that is a rewriting of an expression whose type has
a declared Implicit_Derenference aspect is a variable.

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

12 years ago2012-05-15 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 15 May 2012 12:09:44 +0000 (12:09 +0000)]
2012-05-15  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Insert_Dereference_Action): Reimplemented. The
routine performs address and size adjustments for dereferences
of heap-allocated controlled objects. This manipulation is needed
in order to restore the original state of the memory at the time
it was allocated by the finalization machinery.
* rtsfind.ads: Add RE_Adjust_Controlled_Dereference to tables
RE_Id and RE_Unit_Table.
* sinfo.adb (Has_Dereference_Action): New routine.
(Set_Has_Dereference_Action): New routine.
* sinfo.ads: Add new semantic flag Has_Dereference_Action along
its association in nodes.
(Has_Dereference_Action): New routine and pragma Inline.
(Set_Has_Dereference_Action): New routine and pragma Inline.
* s-stposu.ads, s-stposu.adb (Adjust_Controlled_Dereference): New
routine.

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

12 years ago2012-05-15 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 15 May 2012 12:06:55 +0000 (12:06 +0000)]
2012-05-15  Thomas Quinot  <quinot@adacore.com>

* uintp.adb (Image_Uint): Use UI_Div_Rem to get quotient and
remainder of U / Base in a single operation.

2012-05-15  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, inline.adb, sem_ch10.adb, prj.ads, sem_util.adb,
a-ngelfu.ads, exp_ch4.adb, exp_ch6.adb, aspects.ads, sem_ch6.adb,
vms_data.ads, exp_ch3.adb, prj-env.adb: Minor reformatting.

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

12 years ago2012-05-15 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 15 May 2012 12:04:02 +0000 (12:04 +0000)]
2012-05-15  Thomas Quinot  <quinot@adacore.com>

* exp_ch4.adb (Has_Inferable_Discriminants): For a qualified
expression, use correct node for test on the subtype denoted by
the subtype mark.

2012-05-15  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Scope_In_Main_Unit): Rename into...
(In_Main_Unit_Or_Subunit): ...this.  Also return
true if the subprogram is within a subunit of the
main unit.
(Add_Inlined_Body): Adjust for above renaming.
(Add_Inlined_Subprogram): Likewise.  Pass the subprogram directly.
(Analyze_Inlined_Bodies): Really set aside inlined subprograms
not handled by Add_Inlined_Body.

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

12 years ago2012-05-15 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 May 2012 11:07:26 +0000 (11:07 +0000)]
2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Expand_With_Clause): In the context of a generic
package declaration, a private with-clause on a child unit implies
that the implicit with clauses on its parents are private as well.

2012-05-15  Javier Miranda  <miranda@adacore.com>

* sem_ch6.adb (Is_Interface_Conformant): Add missing call to
Base_Type to handle subtypes.
* exp_ch6.adb (Expand_Call): For calls located in thunks handle
unchecked conversions of access types found in actuals.
* exp_disp.adb (Expand_Interface_Thunk): Add missing unchecked
conversion to actuals whose type is an access type. Done to
avoid reporting spurious errors.

2012-05-15  Vincent Celier  <celier@adacore.com>

* prj-env.adb (Create_Mapping): Ignore sources that are
suppressed (Create_Mapping_File.Process): Ditto
* prj-nmsc.adb (Add_Source): Update to take into
account suppressed files that may hide inherited sources.
(Mark_Excluded_Sources): Mark excluded sources of the current
project as suppressed.
* prj.ads (Source_Data): New Boolean component Suppressed,
defaulted to False

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* exp_intr.adb: Minor reformatting.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi: Document attribute Scalar_Storage_Order.

2012-05-15  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Build_Offset_To_Top): Modify the
expansion of the offset_to_top functions to ensure that their
profile is conformant with the profile specified in Ada.Tags. No
change in functionality.

2012-05-15  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Subp_Info): Remove Count and Next_Nopred
components, add Processed component and move around Next component.
(Add_Call): Reverse meaning of Successors table to the natural one.
(Add_Inlined_Body): Do not inline a package if it is in the main unit.
(Add_Inlined_Subprogram): Do not add the subprogram to the list if the
package is in the main unit. Do not recurse on the successors.
(Add_Subp): Adjust to new contents of Subp_Info.
(Analyze_Inlined_Bodies): Do not attempt
to compute a topological order on the list of inlined subprograms,
but compute the transitive closure from the main unit instead.
(Get_Code_Unit_Entity): Always return the spec for a package.

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

12 years ago2012-05-15 Yannick Moy <moy@adacore.com>
charlet [Tue, 15 May 2012 11:02:25 +0000 (11:02 +0000)]
2012-05-15  Yannick Moy  <moy@adacore.com>

* aspects.ads: Minor addition of comments to provide info on
how to add new aspects.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* osint.ads: Minor reformatting.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* exp_ch5.adb, exp_pakd.adb, sem_util.adb, sem_util.ads
(Expand_Assign_Array): Handle the case of a packed bit array within a
record with reverse storage order (assign element by element in that
case).
(In_Reverse_Storage_Order_Record): New subprogram,
code extracted from Exp_Pakd.

2012-05-15  Yannick Moy  <moy@adacore.com>

* a-ngelfu.ads: Add postconditions using Ada 2012
aspect syntax, reflecting some of the RM requirements for these
functions, from Annex A.5.1 or G.2.4.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* adaint.c: Minor fix: move misplaced comment.

2012-05-15  Doug Rupp  <rupp@adacore.com>

* vms_data.ads: Enhance help for /IMMEDIATE_ERRORS to discourage
use by customers.

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

12 years ago2012-05-15 Arnaud Charlet <charlet@adacore.com>
charlet [Tue, 15 May 2012 10:54:04 +0000 (10:54 +0000)]
2012-05-15  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb: Enable Exception_Extra_Info in CodePeer_Mode.

2012-05-15  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi (Complexity Metrics Control section): Fix
reference to McCabe's book defining complexity metrics.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 15 May 2012 10:52:24 +0000 (10:52 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

* a-exextr.adb: Add comment.

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb: Minor reformatting (remove long dead code).

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* aspects.adb, aspects.ads: Add aspects for Convention, Export,
External_Name, Import, and Link_Name.
* exp_prag.adb (Expand_Pragma_Import_Or_Interface): if the
pragma comes from an aspect specification, the entity is the
first argument.
* sem_prag.adb (Analyze_Pragma, cases Pragma_Export and
Pragma_Import): if the pragma comes from an aspect specification,
the entity is the first argument, and the second has the value
True by default.
* sem_ch13.adb (Analyze_Aspect_Specifications): generate pragam
for aspect Convention. Add placeholders for Link_Name and
External_Name.

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

12 years agoFix up changelogs.
bernds [Tue, 15 May 2012 10:51:02 +0000 (10:51 +0000)]
Fix up changelogs.

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

12 years agoRemove now redundant manual cleanup-modules directive.
aldot [Tue, 15 May 2012 10:42:32 +0000 (10:42 +0000)]
Remove now redundant manual cleanup-modules directive.

2012-05-15  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

* gfortran.dg/*.f90: Remove now redundant manual
cleanup-modules directive.

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

12 years ago2012-05-15 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 15 May 2012 10:41:15 +0000 (10:41 +0000)]
2012-05-15  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch9.adb (Expand_N_Asynchronous_Select): Extract the statements
of the abortable part and triggering alternative after being processed
for controlled objects.
(Expand_N_Timed_Entry_Call): Code and comment reformatting.

2012-05-15  Robert Dewar  <dewar@adacore.com>

* sem_util.adb: Minor code reorganization.

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

12 years ago2012-05-15 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 May 2012 10:22:07 +0000 (10:22 +0000)]
2012-05-15  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, exp_ch11.adb, exp_ch11.ads: Minor reformatting.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb (Resolve): Enforce E.2.2(11/2) and E.2.2(12) for
'Unrestricted_Access and 'Unchecked_Access (not just 'Access):
even in those cases, a remote access type may only designate a
remote subprogram.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb, sem_util.ads, sem_cat.adb: Minor refactoring.
(Enclosing_Lib_Unit_Node): Rename to Enclosing_Comp_Unit_Node.

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove obsolete
checks on nested inlined subprograms.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* fe.h (Get_RT_Exception_Name): Declare.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c (db_region_for): Use %p + cast to avoid warnings.
(get_region_description_for): Likewise.
(db_action_for): Likewise.
(get_call_site_action_for): Likewise.
(get_ttype_entry_for): Remove useless 'const'.
(PERSONALITY_FUNCTION): Add ATTRIBUTE_UNUSED on uw_exception_class.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* a-exextr.adb (Unhandled_Exception_Terminate): Save occurrence
on the stack to avoid a dynamic memory allocation.

2012-05-15  Bob Duff  <duff@adacore.com>

* exp_ch9.adb (Expand_N_Timed_Entry_Call): Move initialization of
E_Stats and D_Stats after Process_Statements_For_Controlled_Objects,
because those calls can destroy the Statements list.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 15 May 2012 10:17:26 +0000 (10:17 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

* fe.h (Get_RT_Exception_Name): Define.
* types.ads (RT_Exception_Code): Update comment.
* exp_ch11.adb, exp_ch11.ads (Get_RT_Exception_Name): New
procedure to get the name of the rcheck subprograms.
* a-except-2005.adb (Rcheck_xx): Rename.
* a-except.adb Likewise, but also keep the old Rcheck_nn routines
for bootstrap.
* arith64.c (__gnat_mulv64): Use __gnat_rcheck_CE_Overflow_Check
instead of __gnat_rcheck_10.
* gcc-interface/trans.c (build_raise_check): Use Get_RT_Exception_Name
to create the __gnat_rcheck routines name.
* gcc-interface/Make-lang.in: Update dependencies.

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

12 years ago2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 May 2012 10:03:00 +0000 (10:03 +0000)]
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

     * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Revert
unintended commit.

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

12 years ago2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 May 2012 10:00:19 +0000 (10:00 +0000)]
2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53339
* include/bits/hashtable_policy.h (__detail::_Identity,
__detail::_Select1st): Add.
(_Map_base, _Hashtable_base): Use the latter, adjust parameters.
* include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
* include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
Likewise.
* include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
Likewise.
* include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
Unconditionally derive from unary_function.
* include/ext/functional (identity, select1st, select2nd): Remove
#ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
* testsuite/23_containers/unordered_map/requirements/53339.cc: New.
* testsuite/23_containers/unordered_multimap/requirements/
53339.cc: Likewise.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 15 May 2012 09:48:58 +0000 (09:48 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

* exp_ch7.adb (Build_Exception_Handler): Save current
occurrence only if -gnateE.
(Build_Object_Declaration): Declare E_Id only if -gnateE.
(Build_Raise_Statement): Call Raise_From_Controlled_Operation only if
-gnateE (else raise PE).
* s-soflin.adb (Save_Library_Occurrence): Handle null occurrence
access.
* a-except-2005.adb (Reraise_Library_Exception_If_Any): Call
Raise_From_Controlled_Operation only if the saved occurrence is
not null, otherwise raise PE.

2012-05-15  Yannick Moy  <moy@adacore.com>

* exp_alfa.ads: Add comments describing the Alfa mode.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 15 May 2012 09:46:19 +0000 (09:46 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

* s-soflin.ads, s-soflin.adb (Save_Library_Occurrence): Parameter
E is now of type Exception_Occurrence_Access.
* exp_ch7.ads, exp_ch7.adb (Build_Exception_Handler): Adjust generated
call to Save_Library_Occurrence.

2012-05-15  Thomas Quinot  <quinot@adacore.com>

* exp_ch4.adb (Rewrite_Coextension): Use Insert_Action to
insert temporary variable decl at the proper place in the tree.

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

12 years ago2012-05-15 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 15 May 2012 09:44:53 +0000 (09:44 +0000)]
2012-05-15  Hristian Kirtchev  <kirtchev@adacore.com>

* g-calend.adb (Split_At_Locale): New routine.
(Time_Of_At_Locale): New routine.
* g-calend.ads (Split_At_Locale): New routine.
(Time_Of_At_Locale): New routine.

2012-05-15  Gary Dismukes  <dismukes@adacore.com>

* a-except.ads: Minor reformatting.

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the loop
parameter specification is part of a quantified expression, and it
already carries a type, do not repeat the analysis to preserve
type information: a range attribute reference may have been
rewritten as a range with static bounds, and its re-analysis may
type it as Integer by default, instead of the original index type.

2012-05-15  Robert Dewar  <dewar@adacore.com>

* s-osprim-mingw.adb: Minor reformatting.

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

12 years ago2012-05-15 Arnaud Charlet <charlet@adacore.com>
charlet [Tue, 15 May 2012 09:42:01 +0000 (09:42 +0000)]
2012-05-15  Arnaud Charlet  <charlet@adacore.com>

* a-except.adb, a-except.ads (Reraise_Library_Exception_If_Any): New.
Mark this unit preelaborate.
* s-soflin.ads: Make package Preelaborate.

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

12 years ago2012-05-15 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 May 2012 09:40:25 +0000 (09:40 +0000)]
2012-05-15  Robert Dewar  <dewar@adacore.com>

* s-osprim-mingw.adb, sem_eval.adb, a-calend-vms.ads: Minor reformatting

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

12 years ago2012-05-15 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 May 2012 09:37:57 +0000 (09:37 +0000)]
2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_eval.adb (Subtypes_Statically_Match): In Ada 2012, static
matching requires matching of static subtype predicates as well.

2012-05-15  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb (Analyze_Choices): If the subtype of the
expression has a non-static predicate, the case alternatives
must cover the base type.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* a-calend-vms.ads: Add pragma export to Split and Time_Of.
Merge comments from a-calend.ads to minimize differences.

2012-05-15  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: gnatmetric: add a small example that demonstrates
the difference between control coupling and unit coupling.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* bindgen.adb (Gen_Header): Remove code to emit LE_Set.
(Gen_Finalize_Library): Replace test with
a call to __gnat_reraise_library_exception_if_any.
* s-soflin.ads (Library_Exception): Do not export.
(Library_Exception_Set): Likewise.
* a-except-2005.ads, a-except-2005.adb
(Reraise_Library_Exception_If_Any): New procedure.

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

12 years ago2012-05-15 Geert Bosch <bosch@adacore.com>
charlet [Tue, 15 May 2012 09:34:10 +0000 (09:34 +0000)]
2012-05-15  Geert Bosch  <bosch@adacore.com>

* sem_ch9.adb (Allows_Lock_Free_Implementation): out or in out
parameters can be access types as well, not just scalar types,
so relax the test to Is_Elementary_Type.

2012-05-15  Bob Duff  <duff@adacore.com>

* s-atacco.ads s-atacco.adb: Replace pragma Elaborate_Body
with pragma No_Body.
(Xyz): Remove Xyz, which is apparently unnecessary.

2012-05-15  Tristan Gingold  <gingold@adacore.com>

* a-calend-vms.adb: Complete previous change.

2012-05-15  Bob Duff  <duff@adacore.com>

* s-win32.ads: Minor comment fix.
* s-osprim-mingw.adb: Minor editing.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 15 May 2012 09:31:45 +0000 (09:31 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

      * tree-ssa-strlen.c (get_string_length): Convert lhs if needed.

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

12 years ago2012-05-15 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 May 2012 09:31:25 +0000 (09:31 +0000)]
2012-05-15  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb, sem_ch9.adb, sem_ch13.adb: Minor reformatting.

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

12 years ago2012-05-15 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 May 2012 09:29:46 +0000 (09:29 +0000)]
2012-05-15  Robert Dewar  <dewar@adacore.com>

* g-comlin.adb, g-comlin.ads: Minor reformatting.

2012-05-15  Vincent Pucci  <pucci@adacore.com>

* aspects.adb, aspects.adb: Reordering of the Aspect_Idi list. New
aspect Aspect_Lock_Free.
* einfo.adb, einfo.ads: New flag Uses_Lock_Free (flag 188).
(Set_Uses_Lock_Free): New routine.
(Uses_Lock_Free): New routine.
* exp_ch7.adb (Is_Simple_Protected_Type): Return False for
lock-free implementation.
* exp_ch9.adb (Allows_Lock_Free_Implementation): Moved to Sem_Ch9.
(Build_Lock_Free_Unprotected_Subprogram_Body): Protected
procedure uses __sync_synchronise. Check both Object_Size
and Value_Size.
(Expand_N_Protected_Body): Lock_Free_Active
renames Lock_Free_On.
(Expand_N_Protected_Type_Declaration):
_Object field removed for lock-free implementation.
(Install_Private_Data_Declarations): Protection object removed
for lock-free implementation.
(Make_Initialize_Protection):
Protection object initialization removed for lock-free implementation.
* rtsfind.ads: RE_Atomic_Synchronize and RE_Relaxed added.
* sem_ch13.adb (Analyze_Aspect_Specifications): Aspect_Lock_Free
analysis added.
* sem_ch9.adb (Allows_Lock_Free_Implementation): New routine.
(Analyze_Protected_Body): Allows_Lock_Free_Implementation call added.
(Analyze_Protected_Type_Declaration):
Allows_Lock_Free_Implementation call added.
(Analyze_Single_Protected_Declaration): Second analysis of
aspects removed.
* s-atopri.ads: Header added.
(Atomic_Synchronize): New routine.

2012-05-15  Robert Dewar  <dewar@adacore.com>

* exp_ch7.ads: Add comment.

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

12 years ago2012-05-15 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 15 May 2012 09:26:48 +0000 (09:26 +0000)]
2012-05-15  Hristian Kirtchev  <kirtchev@adacore.com>

* a-calend.adb (Day_Of_Week): The routine once again treats
all dates as historic. (Formatting_Operations.Split): All
calls to UTC_Time_Offset are now controlled through formal
parameter Is_Historic. (Formatting_Operations.Time_Of):
All calls to UTC_Time_Offset are now handled through
formal parameter Is_Historic.
(Split): Update the call to Formatting_Operations.Split.
(Time_Of): Update the call to Formatting_Operations.Time_Of.
(To_Ada_Time): Update the call to Formatting_Operations.Time_Of.
(To_Strict_Tm): Update the call to Formatting_Operations.Split.
* a-calend.ads (Split): Add new formal Is_Historic along with
comment on usage. This routine is now exported for the purposes
of GNAT.Calendar.Locale.
(Time_Of): Remove defaults. Add new
formal Is_Historic along with comment on usage. This routine is
now exported for the purposes of GNAT.Calendar.Locale.
* a-calend-vms.adb (Split): Update the call to
Formatting_Operations.Split.
(Time_Of): Update the call to Formatting_Operations.Time_Of.
* a-calend-vms.ads (Split): Add new formal Is_Historic along
with comment on usage. (Time_Of): Remove defaults. Add new
formal Is_Historic along with comment on usage.
* a-calfor.adb (Split): Update the call to
Formatting_Operations.Split.
(Time_Of): Update the call to Formatting_Operations.Time_Of.
* impunit.adb: Include g-calloc to the list of non-RM defined
units.

2012-05-15  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Add_Source): Always add the source if it is
excluded, to avoid incorrect duplicate checks.

2012-05-15  Yannick Moy  <moy@adacore.com>

* sem_aux.ads: Correct typo.
* sem_eval.adb (Compile_Time_Known_Value): Return False in Alfa
mode for a deferred constant when outside of the scope of its
full view.

2012-05-15  Emmanuel Briot  <briot@adacore.com>

* g-comlin.adb, g-comlin.ads (Define_Switch): Allow specifying the name
of the argument, for the automatic help message.
(Getopt): do not systematically initialize switches with string values
to the empty string, when the user has already specified a default.

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

12 years ago2012-05-15 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 15 May 2012 09:20:37 +0000 (09:20 +0000)]
2012-05-15  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_set_modified): Move ...
* gimple.h (gimple_set_modified): ... here.

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

12 years ago2012-05-15 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 15 May 2012 07:57:57 +0000 (07:57 +0000)]
2012-05-15  Tristan Gingold  <gingold@adacore.com>

        * ira-color.c (move_spill_restore): Add a guard.

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

12 years ago * config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust calls to
ebotcazou [Tue, 15 May 2012 07:41:00 +0000 (07:41 +0000)]
* config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust calls to
plus_constant.

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

12 years ago * gimplify.c (gimplify_init_constructor): Do a block move for very
ebotcazou [Tue, 15 May 2012 07:21:37 +0000 (07:21 +0000)]
* gimplify.c (gimplify_init_constructor): Do a block move for very
small objects as well.

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

12 years ago * ira.c (find_moveable_pseudos): Skip registers whose
bernds [Tue, 15 May 2012 02:03:01 +0000 (02:03 +0000)]
* ira.c (find_moveable_pseudos): Skip registers whose
DF_REG_EQ_USE_COUNT is nonzero.

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

12 years ago2012-05-15 Kenneth Zadeck <zadeck@naturalbridge.com>
zadeck [Tue, 15 May 2012 01:18:22 +0000 (01:18 +0000)]
2012-05-15  Kenneth Zadeck  <zadeck@naturalbridge.com>

* doc/md.texi (fma): Define to only be applicable for single
rounding.

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

12 years agoDaily bump.
gccadmin [Tue, 15 May 2012 00:17:50 +0000 (00:17 +0000)]
Daily bump.

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

12 years agolibgo: Use -fgo-pkgpath.
ian [Mon, 14 May 2012 22:08:42 +0000 (22:08 +0000)]
libgo: Use -fgo-pkgpath.

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

12 years ago PR target/46098
uros [Mon, 14 May 2012 21:28:07 +0000 (21:28 +0000)]
PR target/46098
* config/i386/i386.c (ix86_expand_special_args_builtin): Always
generate target register for "load" class builtins.

Revert:
2010-10-22  Uros Bizjak  <ubizjak@gmail.com>

PR target/46098
* config/i386/sse.md (*avx_movu<ssemodesuffix><avxmodesuffix>):
Rename from avx_movu<ssemodesuffix><avxmodesuffix>.
(avx_movu<ssemodesuffix><avxmodesuffix>): New expander.
(*<sse>_movu<ssemodesuffix>): Rename from <sse>_movu<ssemodesuffix>.
(<sse>_movu<ssemodesuffix>): New expander.
(*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
(avx_movdqu<avxmodesuffix>): New expander.
(*sse2_movdqu): Rename from sse2_movdqu.
(sse2_movdqu): New expander.

testsuite/ChangeLog:

* gcc.target/i386/avx256-unaligned-load-[1234].c: Update scan strings.
* gcc.target/i386/avx256-unaligned-store-[1234].c: Ditto.

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

12 years ago2012-05-14 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 14 May 2012 20:28:00 +0000 (20:28 +0000)]
2012-05-14  Marc Glisse  <marc.glisse@inria.fr>

        * MAINTAINERS (Write After Approval): Add myself.

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

12 years ago2012-05-14 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 14 May 2012 20:19:30 +0000 (20:19 +0000)]
2012-05-14  Marc Glisse  <marc.glisse@inria.fr>

PR target/52607
* config/i386/i386.c (ix86_expand_vec_perm_const): Move code to ...
(canonicalize_perm): ... new function.
(expand_vec_perm_2vperm2f128_vshuf): New function.
(ix86_expand_vec_perm_const_1): Call it.

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

12 years agoPR 52428 Range checking when reading integer values.
jb [Mon, 14 May 2012 19:39:23 +0000 (19:39 +0000)]
PR 52428 Range checking when reading integer values.

gcc/fortran ChangeLog:

2012-05-14  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/52428
* gfortran.texi: Update _gfortran_set_options documentation.
* invoke.texi: Remove runtime behavior description of
-fno-range-check.
* trans-decl.c (create_main_function): Don't pass the range-check
setting to the library.

libgfortran ChangeLog:

2012-05-14  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/52428
* io/io.h (max_value): Rename to si_max, remove second argument.
* io/list_read.c (convert_integer): Use unsigned types when
parsing the digits, set max value depending on the sign.
* io/read.c (max_value): Rename to si_max, remove second argument,
simplify.
(read_decimal): Set max value depending on sign, always check
overflow.
(read_radix): Calculate max unsigned value directly.
* libgfortran.h (struct compile_options_t): Remove range_check
field.
* runtime/compile_options.c (set_options): Skip handling
options[7].
(init_compile_options): Don't set removed field.

gcc/testsuite ChangeLog:

2012-05-14  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/52428
* gfortran.dg/int_range_io_1.f90: New test.

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

12 years ago2012-05-14 Andrew Pinski <apinski@cavium.com>
jakub [Mon, 14 May 2012 18:47:05 +0000 (18:47 +0000)]
2012-05-14  Andrew Pinski  <apinski@cavium.com>
    H.J. Lu  <hongjiu.lu@intel.com>
    Jakub Jelinek  <jakub@redhat.com>

PR target/53315
* config/i386/i386.md (xbegin_1): Use + in constraint and
match_dup.
(xbegin): Updated.

2012-05-14  Andi Kleen <ak@linux.intel.com>
    Jakub Jelinek  <jakub@redhat.com>

PR target/53315
* gcc.target/i386/i386.exp (check_effective_target_rtm): New.
* gcc.target/i386/rtm-check.h: New file.
* gcc.target/i386/pr53315.c: New test.

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

12 years ago * dwarf2out.c (dwarf2out_define, dwarf2out_undef): Treat
jakub [Mon, 14 May 2012 17:07:41 +0000 (17:07 +0000)]
* dwarf2out.c (dwarf2out_define, dwarf2out_undef): Treat
lineno 1 the same as lineno 0 before first start file directive.
(optimize_macinfo_range): Likewise.

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

12 years ago * dwarf2out.c (have_macinfo): Define.
jakub [Mon, 14 May 2012 17:06:19 +0000 (17:06 +0000)]
* dwarf2out.c (have_macinfo): Define.
(dwarf2out_finish): Don't emit DW_AT_GNU_macros or DW_AT_macro_info
attribute, don't force empty compilation unit and don't emit any
.debug_macinfo/.debug_macro section if macinfo_table is empty.

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

12 years ago2012-05-14 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 14 May 2012 16:45:16 +0000 (16:45 +0000)]
2012-05-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49110
        PR fortran/51055
        PR fortran/53329
        * trans-expr.c (gfc_trans_assignment_1): Fix allocation
        handling for assignment of function results to allocatable
        deferred-length strings.
        * trans-decl.c (gfc_create_string_length): For deferred-length
        module variables, include module name in the assembler name.
        (gfc_get_symbol_decl): Don't override the assembler name.

2012-05-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49110
        PR fortran/51055
        PR fortran/53329
        * gfortran.dg/deferred_type_param_4.f90: New.
        * gfortran.dg/deferred_type_param_6.f90: New.

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

12 years ago PR target/53344
gjl [Mon, 14 May 2012 15:47:52 +0000 (15:47 +0000)]
PR target/53344
* config/avr/avr.c (avr_const_address_lo16): Remove.
(avr_assemble_integer):  Print ".byte lo8(x)",
".byte hi8(x)", ".byte hh8(x)" instead of emit an assembler
.warning if 3-byte address is assembled.
* doc/extend.texi (AVR Named Address Spaces): Document that
binutils 2.23 is needed to assemble 3-byte addresses.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 15:06:40 +0000 (15:06 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_setup_realignment): Remove
call to mark_symbols_for_renaming.
(vect_permute_load_chain): Likewise.
* tree-vect-loop.c (vect_is_slp_reduction): Update stmt
instead of calling mark_symbols_for_renaming.
* tree-vect-stmts.c (read_vector_array): Remove call to
mark_symbols_for_renaming.
(write_vector_array): Likewise.
(vectorizable_call): Likewise.
(vectorizable_store): Likewise.
(vectorizable_load): Likewise.
* matrix-reorg.c (transform_allocation_sites): Likewise.
* tree-ssa-pre.c (create_expression_by_pieces): Likewise.
(create_expression_by_pieces): Likewise.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 15:05:21 +0000 (15:05 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

* gimplify.c (gimple_regimplify_operands): Only mark the LHS
of statements for renaming.
(force_gimple_operand_1): Likewise, consistently for both
calls to force_gimple_operand and force_gimple_operand_gsi.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 15:04:39 +0000 (15:04 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

* tree-dfa.c (make_rename_temp): Be forgiving if not in SSA form.
* omp-low.c (expand_omp_taskreg): Properly conditionalize call
to update_ssa.
(expand_omp_for): Likewise.
(expand_omp_for_generic): Adjust conditional add to referenced vars.
Use make_rename_temp for temporaries that should be rewritten into
SSA form.
(expand_omp_for_static_nochunk): Likewise.
(expand_omp_atomic_pipeline): Likewise.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 15:01:22 +0000 (15:01 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53331
* tree-vect-data-refs.c (vect_verify_datarefs_alignment): Ignore
strided loads.
* tree-vect-stmts.c (vect_model_load_cost): Handle strided loads.

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

12 years ago2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Mon, 14 May 2012 13:30:32 +0000 (13:30 +0000)]
2012-05-14  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR 53063
c-family/
* c.opt (Wc++0X-compat,Wdelete-non-virtual-dtor,Wjump-misses-init,
Wreorder): Use LangEnabledBy.
* c-opts.c (c_common_handle_option): Do not enable them
explicitly. Call lang-specific generated functions.
(c_common_post_options): Do not set them here.
gcc/
* doc/options.texi: (LangEnabledBy): Document it.
* optc-gen.awk: Handle LangEnabledBy.
* opth-gen.awk: Generate declaration for lang-specific functions.
* opt-read.awk: Record lang numbers.
* opt-functions.awk (flag_set_p): Ignore the arguments of flags.
(lang_sanitized_name): New.
ada/
* gcc-interface/misc.c: Include opts.h and options.h before tm.h.
(gnat_handle_option): Call lang-specific generated function.
fortran/
* options.c (gfc_handle_option): Call lang-specific generated function.

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

12 years ago * attribs.c (decl_attributes): Avoid emitting a warning if
bernds [Mon, 14 May 2012 12:08:31 +0000 (12:08 +0000)]
* attribs.c (decl_attributes): Avoid emitting a warning if
ATTR_FLAG_BUILT_IN.
* doc/rtl.texi (CALL_INSN_FUNCTION_USAGE): Use lowercase for rtx
codes.  Document meaning of sets inside CALL_INSN_FUNCTION_USAGE.
* c-family/c-common.c (DEF_ATTR_STRING): Define and undefine as
necessary.
* builtin-attrs.def (DEF_ATTR_FOR_STRING): Define.  Use it to
define a string "1".
(ATTR_RET1_NOTHROW_NONNULL_LEAF): New attr definition.
* builtins.def (BUILT_IN_MEMCPY, BUILT_IN_MEMMOVE, BUILT_IN_MEMSET,
BUILT_IN_STRCPY): Use it for these functions.
* postreload.c (reload_combine): Deal with SETs inside
CALL_INSN_FUNCTION_USAGE.
* caller-save.c (setup_save_areas, save_call_clobbered_regs):
Look for REG_RETURNED notes and use a cheap restore if possible.
* ira-int.h (struct ira_allocno): New member cheap_calls_crossed_num.
(ALLOCNO_CHEAP_CALLS_CROSSED_NUM): New macro.
* ira-build.c (ira_create_allocno, create_cap_allocno,
propagate_allocno_info, propagate_some_info_from_allocno,
copy_info_to_removed_store_destination, ira_flattening): Handle it.
* ira-lives.c (pseudo_regno_single_word_and_live_p,
find_call_crossed_cheap_reg): New static functions.
(process_bb_node_lives): Look for SETs in CALL_INSN_FUNCTION_USAGE,
and set ALLOCNO_CHEAP_CALLS_CROSSED_NUM if possible.  Also make
a REG_RETURNED note in that case.
* ira.c (setup_reg_renumber): Change assert to allow cases where
allocnos only cross calls for which they are cheap to restore.
* ira-costs.c (ira_tune_allocno_costs): Compare
ALLOCNO_CALLS_CROSSED_NUM to ALLOCNO_CHEAP_CALLS_CROSSED_NUM rather
than 0.
* reg-notes.def (REG_RETURNED): New note.
* cse.c (cse_insn): Likewise.
* sched-deps.c (sched_analyze_insn): Likewise.
* expr.c (init_block_move_fn): Set a "fn spec" attribute.
* calls.c (decl_return_flags): New static function.
(expand_call): Generate a SET in CALL_INSN_FUNCTION_USAGE for
functions that return one of their arguments.
* lto/lto-lang.c (handle_fnspec_attribute): New static function.
(lto_attribute_table): Add "fn spec".
(DEF_ATTR_STRING): Define and undefine along with the other macros.
* regcprop.c (struct kill_set_value_data): New.
(kill_set_value): Interpret data as a pointer to such a struct.
Do nothing if the caller wants the register to be ignored.
(copyprop_hardreg_forward_1): Handle SETs in CALL_INSN_FUNCTION_USAGE.

testsuite/
* gcc.target/i386/retarg.c: New test.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 11:36:58 +0000 (11:36 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53340
* tree-ssa-pre.c (op_valid_in_sets): Fix error in last commit.

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

12 years ago2012-05-14 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 14 May 2012 10:44:44 +0000 (10:44 +0000)]
2012-05-14  Richard Guenther  <rguenther@suse.de>

* gimplify.c (gimplify_expr): Remove odd code.

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

12 years ago * stor-layout.c (bit_from_pos): Distribute conversion to bitsizetype
ebotcazou [Mon, 14 May 2012 08:46:33 +0000 (08:46 +0000)]
* stor-layout.c (bit_from_pos): Distribute conversion to bitsizetype
into a PLUS_EXPR byte offset.

* tree-ssa-pre.c (can_value_number_call): Delete.
(compute_avail): Skip all statements with side effects.
<GIMPLE_CALL>: Skip calls to internal functions.

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

12 years agoDaily bump.
gccadmin [Mon, 14 May 2012 00:19:01 +0000 (00:19 +0000)]
Daily bump.

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