gcc.git
11 years agore PR debug/54970 (Missing DW_OP_GNU_implicit_pointer in debuginfo)
Jakub Jelinek [Fri, 26 Oct 2012 19:19:25 +0000 (21:19 +0200)]
re PR debug/54970 (Missing DW_OP_GNU_implicit_pointer in debuginfo)

PR debug/54970
* cfgexpand.c (expand_debug_expr): Expand &MEM_REF[&var, n]
as DEBUG_IMPLICIT_PTR + n if &var expands to DEBUG_IMPLICIT_PTR.
* tree-sra.c (create_access_replacement): Allow also MEM_REFs
with ADDR_EXPR first operand in DECL_DEBUG_EXPR expressions.
* var-tracking.c (track_expr_p): Handle MEM_REFs in DECL_DEBUG_EXPR
expressions.
* dwarf2out.c (add_var_loc_to_decl): Likewise.

PR debug/54971
* gcc.dg/guality/pr54970.c: New test.

From-SVN: r192860

11 years agoUpdate copyright
Andreas Schwab [Fri, 26 Oct 2012 19:12:45 +0000 (19:12 +0000)]
Update copyright

From-SVN: r192859

11 years agoChangeLog: Fix whitespace.
Uros Bizjak [Fri, 26 Oct 2012 18:36:38 +0000 (20:36 +0200)]
ChangeLog: Fix whitespace.

        * ChangeLog: Fix whitespace.
        * testsute/ChangeLog: Ditto.

From-SVN: r192856

11 years agocrtfastmath.c (set_fast_math): Use __builtin_ia32_fxsave.
Uros Bizjak [Fri, 26 Oct 2012 17:54:50 +0000 (19:54 +0200)]
crtfastmath.c (set_fast_math): Use __builtin_ia32_fxsave.

* config/i386/crtfastmath.c (set_fast_math): Use __builtin_ia32_fxsave.
Clear only fxsave.mxcsr_mask.  Use saved mxcsr from fxsave structure
when appropriate.  Correct structure element types.
* config/i386/t-crtfm (crtfastmath.o): Compile with -mfxsr, remove
-minline-all-stringops from compile flags.

From-SVN: r192855

11 years agosyscall: fix creds_test to reliably close os.File
Ian Lance Taylor [Fri, 26 Oct 2012 17:50:10 +0000 (17:50 +0000)]
syscall: fix creds_test to reliably close os.File

Uncovered by Uros Bizjak.

Before this patch the test would close the file descriptor but
not the os.File.  When the os.File was GC'ed, the finalizer
would close the file descriptor again.  That would cause
problems if the same file descriptor were returned by a later
call to open in another test.

On my system:

> GOGC=30 go test
--- FAIL: TestPassFD (0.04 seconds)
passfd_test.go:62:  FileConn: dup: bad file descriptor
FAIL

From-SVN: r192854

11 years agore PR target/55061 (libbacktrace build fails during bootstrap on powerpc-apple-darwin9)
Jack Howarth [Fri, 26 Oct 2012 17:34:59 +0000 (17:34 +0000)]
re PR target/55061 (libbacktrace build fails during bootstrap on powerpc-apple-darwin9)

PR target/55061
* configure.ac: Check for _Unwind_GetIPInfo function declaration.
* configure: Regenerate.

From-SVN: r192853

11 years ago* tree-ssa-threadedge.c (cond_arg_set_in_bb): Use last stmt.
Jeff Law [Fri, 26 Oct 2012 17:33:11 +0000 (11:33 -0600)]
* tree-ssa-threadedge.c (cond_arg_set_in_bb): Use last stmt.

From-SVN: r192852

11 years agoAuthor: Gunther Nikl <gnikl@users.sourceforge.net>
Gunther Nikl [Fri, 26 Oct 2012 17:29:06 +0000 (17:29 +0000)]
Author: Gunther Nikl <gnikl@users.sourceforge.net>

* common/config/m68k/m68k-common.c (m68k_handle_option): Set
gcc_options fields of opts_set for -m68020-40 and -m68020-60.

From-SVN: r192851

11 years agoAvoid conservative behavior in REE by allowing removal of redundant extends when...
Teresa Johnson [Fri, 26 Oct 2012 17:19:35 +0000 (17:19 +0000)]
Avoid conservative behavior in REE by allowing removal of redundant extends when...

Avoid conservative behavior in REE by allowing removal of redundant extends
when the def feeds another extend with a different mode. This works because
in merge_def_and_ext only calls combine_set_extension if the candidate for
removal has a wider mode than the def extend's mode, otherwise the def extend
mode is preserved. In combine_set_extension the def is modified to use the
wider candidate's mode.

2012-10-26  Teresa Johnson  <tejohnson@google.com>

* ree.c (add_removable_extension): Remove unnecessary
mode check with other extension.
* testsuite/gcc.c-torture/execute/20111227-2.c: New test.
* testsuite/gcc.c-torture/execute/20111227-3.c: Ditto.

From-SVN: r192850

11 years agoipa-inline-transform.c (inline_call): Only account size changes for !DECL_EXTERNAL.
Jan Hubicka [Fri, 26 Oct 2012 16:52:09 +0000 (18:52 +0200)]
ipa-inline-transform.c (inline_call): Only account size changes for !DECL_EXTERNAL.

* ipa-inline-transform.c (inline_call): Only account size changes
for !DECL_EXTERNAL.

From-SVN: r192849

11 years agore PR debug/54971 (SRA pessimizes debug info by not creating debug stmts for fields...
Martin Jambor [Fri, 26 Oct 2012 16:13:00 +0000 (18:13 +0200)]
re PR debug/54971 (SRA pessimizes debug info by not creating debug stmts for fields without replacements)

2012-10-26  Martin Jambor  <mjambor@suse.cz>

PR debug/54971
* tree-sra.c (struct access): New flag grp_to_be_debug_replaced.
(dump_access): Dump the new flag.
(analyze_access_subtree): Set the new flag when appropriate.
(create_access_replacement): Handle debug replacements differently.
(generate_subtree_copies): Handle the grp_to_be_debug_replaced flag.
(init_subtree_with_zero): Likewise.
(sra_modify_expr): Likewise.
(load_assign_lhs_subreplacements): Likewise.
(sra_modify_assign): Likewise.

From-SVN: r192848

11 years agore PR c++/54984 (Array allocated with new in a template class is default initialised)
Paolo Carlini [Fri, 26 Oct 2012 14:03:32 +0000 (14:03 +0000)]
re PR c++/54984 (Array allocated with new in a template class is default initialised)

/cp
2012-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54984
* init.c (build_new): Don't turn a null *init into a pointer to
empty vector orig_init.

/testsuite
2012-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54984
* g++.dg/template/new11.C: New.

From-SVN: r192846

11 years agoi386.c (insn_is_function_arg): Add check on CALL instruction.
Yuri Rumyantsev [Fri, 26 Oct 2012 12:07:58 +0000 (12:07 +0000)]
i386.c (insn_is_function_arg): Add check on CALL instruction.

        * config/i386/i386.c (insn_is_function_arg) : Add check on CALL
        instruction.
        (ix86_dependencies_evaluation_hook): Insert dependencies in all
        predecessors of call block for non-trivial region avoiding creation
        of loop-carried dependency to avoid cross-block motion of HW registers.

From-SVN: r192842

11 years agore PR tree-optimization/54824 (ICE in verify_loop_structure)
Richard Biener [Fri, 26 Oct 2012 10:12:35 +0000 (10:12 +0000)]
re PR tree-optimization/54824 (ICE in verify_loop_structure)

2012-10-26  Richard Biener  <rguenther@suse.de>

PR middle-end/54824
* tree-optimize.c (execute_fixup_cfg): Insert __builtin_unreachable
at the end of blocks with no successors.

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

From-SVN: r192841

11 years agoChangeLog/
Alexander Ivchenko [Fri, 26 Oct 2012 09:45:46 +0000 (09:45 +0000)]
ChangeLog/
        * gcc/common/config/i386/i386-common.c
        (OPTION_MASK_ISA_FXSR_SET): New.
        (OPTION_MASK_ISA_XSAVE_SET): Likewise.
        (OPTION_MASK_ISA_XSAVEOPT_SET): Likewise.
        (ix86_handle_option): Handle mfxsr, mxsave, mxsaveopt options.
        * gcc/config.gcc (i[34567]86-*-*): Add fxsrintrin.h,
        xsaveintrin.h, xsaveoptintrin.h.
        (x86_64-*-*): Likewise.
        * config/i386/fxsrintrin.h: New header.
        * config/i386/xsaveintrin.h: Likewise.
        * config/i386/xsaveoptintrin.h: Likewise.
        * gcc/config/i386/driver-i386.c (host_detect_local_cpu): Detect
        FXSR/XSAVE/XSAVEOPT support.
        * gcc/config/i386/i386-builtin-types.def
        (VOID_FTYPE_PVOID_INT64): New function type.
        * gcc/config/i386/i386-c.c: Define __FXSR__, __XSAVE__
        and __XSAVEOPT__ if needed.
        * gcc/config/i386/i386.c (ix86_target_string): Define -mfxsr,
         -mxsave and -mxsaveopt options.
        (PTA_FXSR): New.
        (PTA_XSAVE): Likewise.
        (PTA_XSAVEOPT): Likewise.
        (ix86_option_override_internal): Handle new option.
        (processor_alias_table): Added PTA_FXSR, PTA_XSAVE, PTA_XSAVEOPT.
        (ix86_valid_target_attribute_inner_p): Add OPT_mfxsr,
        OPT_mxsave, OPT_mxsaveopt.
        (ix86_builtins): Add IX86_BUILTIN_FXSAVE, IX86_BUILTIN_FXRSTOR,
        IX86_BUILTIN_FXSAVE64, IX86_BUILTIN_XSAVE, IX86_BUILTIN_XSAVE64,
        IX86_BUILTIN_XRSTOR, IX86_BUILTIN_XRSTOR64, IX86_BUILTIN_XSAVEOPT,
        IX86_BUILTIN_XSAVEOPT64.
        (ix86_expand_builtin): Handle these built-ins.
        * gcc/config/i386/i386.h (TARGET_FXSR): New.
        (TARGET_XSAVE): Likewise.
        (TARGET_XSAVEOPT): Likewise.
        * gcc/config/i386/i386.md (ANY_XSAVE): New int iterator.
        (ANY_XSAVE64): Likewise.
        (xsave): New int attribute.
        (fxsave): New instruction.
        (fxsave64): Likewise.
        (fxrstor): Likewise.
        (fxrstor64): Likewise.
        (<xsave>): Likewise.
        (<xsave>_rex64): Likewise.
        (xrstor): Likewise.
        (xrstor_rex64): Likewise.
        (xrstor64): Likewise.
        * gcc/config/i386/i386.opt (mfxsr): New.
        (mxsave): Likewise.
        (mxsaveopt): Likewise.
        * gcc/config/i386/x86intrin.h: Include
        xsaveintrin.h, fxsrintrin.h, xsaveoptintrin.h.

testsuite/ChangeLog
        * gcc.target/i386/fxsave-1.c: New.
        * gcc.target/i386/fxsave64-1.c: Ditto.
        * gcc.target/i386/fxrstor-1.c: Ditto.
        * gcc.target/i386/fxrstor64-1.c: Ditto.
        * gcc.target/i386/xsave-1.c: Ditto.
        * gcc.target/i386/xsave64-1.c: Ditto.
        * gcc.target/i386/xrstor-1.c: Ditto.
        * gcc.target/i386/xrstor64-1.c: Ditto.
        * gcc.target/i386/xsaveopt-1.c: Ditto.
        * gcc.target/i386/xsaveopt64-1.c: Ditto.
        * gcc.target/i386/sse-12.c: Add -mfxsr, -mxsaveopt.
        * gcc.target/i386/sse-13.c: Ditto.
        * gcc.target/i386/sse-14.c: Ditto.
        * gcc.target/i386/sse-22.c: Ditto.
        * gcc.target/i386/sse-23.c: Ditto.
        * g++.dg/other/i386-2.C: Ditto.
        * g++.dg/other/i386-3.C: Ditto.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r192840

11 years agot-rtems: Revert previous commit.
Ralf Corsepius [Fri, 26 Oct 2012 08:07:52 +0000 (10:07 +0200)]
t-rtems: Revert previous commit.

2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>

* config/avr/t-rtems: Revert previous commit.

From-SVN: r192838

11 years agore PR bootstrap/55049 (bootstrap failed with --with-multilib-list=m32,m64,mx32)
Richard Sandiford [Fri, 26 Oct 2012 06:41:53 +0000 (06:41 +0000)]
re PR bootstrap/55049 (bootstrap failed with  --with-multilib-list=m32,m64,mx32)

gcc/
PR bootstrap/55049
* Makefile.in (rtlanal.o): Add dependency on addresses.h.
* rtl.h (address_info): New structure.
(strip_address_mutations, decompose_address, decompose_lea_address)
(decompose_mem_address, update_address, get_index_scale)
(get_index_code): Declare.
* rtlanal.c: Include addresses.h.
(strip_address_mutations, must_be_base_p, must_be_index_p)
(set_address_segment, set_address_base, set_address_index)
(set_address_disp, decompose_incdec_address, decompose_automod_address)
(extract_plus_operands, baseness, decompose_normal_address)
(decompose_address, decompose_lea_address, decompose_mem_address)
(update_address, get_index_scale, get_index_code): New functions.
* lra-constraints.c (strip_subreg): New function.
(address, extract_loc_address_regs, extract_address_regs)
(get_index_scale): Delete.
(process_addr_reg): Apply strip_subreg to the location.
(uses_hard_regs_p): Use decompose_mem_address.
(valid_address_p, base_plus_disp_to_reg, can_add_disp_p)
(equiv_address_substitution): Take an address_info rather
than an address.  Remove other arguments.  Avoid using Pmode.
(process_address): Use decompose_mem_address and decompose_lea_address.
Update calls to above functions.

From-SVN: r192837

11 years agolra-constraints.c (process_address): Tighten arguments to base_reg_class.
Richard Sandiford [Fri, 26 Oct 2012 06:41:33 +0000 (06:41 +0000)]
lra-constraints.c (process_address): Tighten arguments to base_reg_class.

gcc/
* lra-constraints.c (process_address): Tighten arguments to
base_reg_class.  Use simplify_gen_binary to generate PLUS rtxes.

From-SVN: r192836

11 years agolra-constraints.c (get_index_scale, [...]): New functions.
Richard Sandiford [Fri, 26 Oct 2012 06:38:23 +0000 (06:38 +0000)]
lra-constraints.c (get_index_scale, [...]): New functions.

gcc/
* lra-constraints.c (get_index_scale, can_add_disp_p): New functions.
(equiv_address_substitution): Use them.

From-SVN: r192835

11 years agolra-constraints.c (valid_address_p): New function, split out from...
Richard Sandiford [Fri, 26 Oct 2012 06:37:54 +0000 (06:37 +0000)]
lra-constraints.c (valid_address_p): New function, split out from...

gcc/
* lra-constraints.c (valid_address_p): New function, split out from...
(process_address): ...here.

From-SVN: r192834

11 years agolra-constraints.c (process_address): Describe the kinds of address that we might...
Richard Sandiford [Fri, 26 Oct 2012 06:37:28 +0000 (06:37 +0000)]
lra-constraints.c (process_address): Describe the kinds of address that we might see.

gcc/
* lra-constraints.c (process_address): Describe the kinds of address
that we might see.

From-SVN: r192833

11 years agolra-int.h (lra_assert): Redefine it gcc_checking_assert.
Vladimir Makarov [Fri, 26 Oct 2012 03:41:19 +0000 (03:41 +0000)]
lra-int.h (lra_assert): Redefine it gcc_checking_assert.

2012-10-25  Vladimir Makarov  <vmakarov@redhat.com>

* lra-int.h (lra_assert): Redefine it gcc_checking_assert.
* lra-constraints.c (check_and_process_move): Remove #if
ENABLE_ASSERT_CHECKING.

From-SVN: r192832

11 years agortems.h (TARGET_OS_CPP_BUILTINS): Remove __USE_INIT_FINI__.
Ralf Corsepius [Fri, 26 Oct 2012 01:00:29 +0000 (03:00 +0200)]
rtems.h (TARGET_OS_CPP_BUILTINS): Remove __USE_INIT_FINI__.

2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>

* config/avr/rtems.h (TARGET_OS_CPP_BUILTINS): Remove
__USE_INIT_FINI__.
* config/avr/t-rtems (LIB1ASMFUNCS): Filter out _exit.

From-SVN: r192828

11 years agoDaily bump.
GCC Administrator [Fri, 26 Oct 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r192827

11 years agoRemove unnecessary sparc constraint.
David S. Miller [Thu, 25 Oct 2012 22:19:47 +0000 (15:19 -0700)]
Remove unnecessary sparc constraint.

* config/sparc/constraints.md ("U"): Delete.
* config/sparc/sparc.md: Use 'r' constraint instead of 'U'.
* config/sparc/sync.md: Likewise.

From-SVN: r192824

11 years agoChange hash_table to support a comparator type different from the value type stored...
Lawrence Crowl [Thu, 25 Oct 2012 21:45:28 +0000 (21:45 +0000)]
Change hash_table to support a comparator type different from the value type stored in the hash table.

Change hash_table to support a comparator type different from the
value type stored in the hash table.  The 'find' functions now may
take a different type from the value type.  This requires introducing
a second typedef into the Descriptor conceptual type.  Change the
Descriptor concept to use typedefs value_type and compare_type instead
of T.  Change all users to match.

Add usage documentation to hash-table.h.

Tested on x86-64.

Index: gcc/ChangeLog

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

* hash-table.h: Add usage documentation.
(template struct typed_free_remove): Clarify documentation.
Rename template parameter.
(struct typed_noop_remove): Likewise.
(descriptor concept): Change typedef T to value_type.
Add typedef compare_type.  Use more precise template parameter name,
Descriptor instead of Descr.  Update users to match.
(struct hash_table): Change 'find' parameters to use compare_type
instead of the value type.

From-SVN: r192823

11 years agocunroll-4.c: Update; we now remove the loop at ivcanon time.
Jan Hubicka [Thu, 25 Oct 2012 19:24:19 +0000 (21:24 +0200)]
cunroll-4.c: Update; we now remove the loop at ivcanon time.

* gcc.dg/tree-ssa/cunroll-4.c: Update; we now remove the loop
at ivcanon time.

From-SVN: r192822

11 years agoipa-cp.c (ipcp_discover_new_direct_edges): If something was turned to direct call...
Jan Hubicka [Thu, 25 Oct 2012 19:23:15 +0000 (21:23 +0200)]
ipa-cp.c (ipcp_discover_new_direct_edges): If something was turned to direct call update the summary.

* ipa-cp.c (ipcp_discover_new_direct_edges): If something was turned
to direct call update the summary.
* ipa-inline-transform.c (inline_call): Sanity check that summaries
match the predicted effect; fix updating of summary after edge
redirection.
* ipa-inline-analysis.c (inline_node_duplication_hook): Do not try
to update the summary and recompute it instead.
(estimate_function_body_sizes): Fix self size estimation; double
check that it agrees with inline_update_overall_summary.
(estimate_edge_size_and_time): Handle devirtualizaiton costs.
(estimate_edge_devirt_benefit): Update to be called from
estimate_edge_size_and_time.
(estimate_calls_size_and_time): Update.
(estimate_node_size_and_time): Watch overflows.
(inline_merge_summary): Likewise.
* ipa-prob.c: Include ipa-inline.h
(ipa_make_edge_direct_to_target): After redirection update the summary.

From-SVN: r192821

11 years agore PR debug/55063 (Thousands of failures in the libstdc++-v3 tests after revision...
Cary Coutant [Thu, 25 Oct 2012 18:30:27 +0000 (18:30 +0000)]
re PR debug/55063 (Thousands of failures in the libstdc++-v3 tests after revision 192739)

gcc/
PR debug/55063
* dwarf2out.c (prune_unused_types_prune): Check whether DIE is
already a declaration.

From-SVN: r192820

11 years agolibgo: Solaris portability patches.
Ian Lance Taylor [Thu, 25 Oct 2012 18:26:34 +0000 (18:26 +0000)]
libgo: Solaris portability patches.

From Rainer Orth.

From-SVN: r192819

11 years agolra-assigns.c (assign_by_spills): Add non-reload pseudos assigned to hard register...
Vladimir Makarov [Thu, 25 Oct 2012 16:54:14 +0000 (16:54 +0000)]
lra-assigns.c (assign_by_spills): Add non-reload pseudos assigned to hard register to changed_pseudo_bitmap.

2012-10-25  Vladimir Makarov  <vmakarov@redhat.com>

* lra-assigns.c (assign_by_spills): Add non-reload pseudos
assigned to hard register to changed_pseudo_bitmap.

From-SVN: r192817

11 years agoconfig.gcc (microblaze*-*-rtems*): New target.
Ralf Corsepius [Thu, 25 Oct 2012 16:44:27 +0000 (18:44 +0200)]
config.gcc (microblaze*-*-rtems*): New target.

2012-10-25  Ralf Corsépius  <ralf.corsepius@rtems.org>

* config.gcc (microblaze*-*-rtems*): New target.
* config/microblaze/rtems.h: New.
* config/microblaze/t-rtems: New.

From-SVN: r192815

11 years agore PR c++/53761 (ICE on incorrect transparent union (first field has floating point...
Paolo Carlini [Thu, 25 Oct 2012 16:14:59 +0000 (16:14 +0000)]
re PR c++/53761 (ICE on incorrect transparent union (first field has floating point type))

/cp
2012-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53761
* class.c (finish_struct_1): Reject aggregates decorated with
__transparent_union__ which cannot be made transparent because
the type of the first field has a different ABI from the class
overall.

/testsuite
2012-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53761
* g++.dg/ext/transparent-union.C: New.

From-SVN: r192814

11 years agoCore 1402
Jason Merrill [Thu, 25 Oct 2012 15:54:00 +0000 (11:54 -0400)]
Core 1402

Core 1402
cp/
* call.c (joust): An implicitly deleted move function is
worse than any non-deleted function.
* method.c (process_subob_fn): No special rules for move.
(synthesized_method_walk, implicitly_declare_fn): Likewise.
Warn about virtual base with non-trivial move assignment.
* cp-tree.h (struct lang_decl_fn): Remove suppress_implicit_decl.
(FNDECL_SUPPRESS_IMPLICIT_DECL): Remove.
c-family/
* c.opt (Wvirtual-move-assign): New.

From-SVN: r192813

11 years ago* semantics.c (finish_omp_threadprivate): Call complete_type.
Jason Merrill [Thu, 25 Oct 2012 15:53:40 +0000 (11:53 -0400)]
* semantics.c (finish_omp_threadprivate): Call complete_type.

From-SVN: r192812

11 years agoc.opt (Winherited-variadic-ctor): New.
Jason Merrill [Thu, 25 Oct 2012 15:53:31 +0000 (11:53 -0400)]
c.opt (Winherited-variadic-ctor): New.

c-family/
* c.opt (Winherited-variadic-ctor): New.
cp/
* class.c (one_inherited_ctor): Warn about variadic inherited ctor.

From-SVN: r192811

11 years agoFix previous commit.
Jan Hubicka [Thu, 25 Oct 2012 15:00:06 +0000 (15:00 +0000)]
Fix previous commit.

From-SVN: r192810

11 years agore PR lto/54980 (gimple check: expected gimple_cond(error_mark), have gimple_call...
Jan Hubicka [Thu, 25 Oct 2012 14:52:32 +0000 (16:52 +0200)]
re PR lto/54980 (gimple check: expected gimple_cond(error_mark), have gimple_call() in gimple_cond_set_lhs, at gimple.h:2578)

PR tree-optimize/54980
* tree-ssa-loop-ivcanon.c (constant_after_peeling): Fix
obvious typo.
(loop_edge_to_cancel): Be sure that the edge is from an conditional
so we can cancel it.

From-SVN: r192809

11 years agore PR c++/54427 (Expose more vector extensions)
Marc Glisse [Thu, 25 Oct 2012 13:02:42 +0000 (15:02 +0200)]
re PR c++/54427 (Expose more vector extensions)

2012-10-25  Marc Glisse  <marc.glisse@inria.fr>

PR c++/54427

gcc/
* tree.c (signed_or_unsigned_type_for): Handle vectors.

gcc/cp/
* typeck.c (build_x_conditional_expr): Handle VEC_COND_EXPR.
* call.c (build_conditional_expr_1): Likewise.

gcc/c-family/
* c-common.c (scalar_to_vector): Handle VEC_COND_EXPR.

gcc/testsuite/
* g++.dg/ext/vector19.C: New testcase.

From-SVN: r192808

11 years agoipa-inline.c (recursive_inlining): Redirect to master clone before testing profitability.
Jan Hubicka [Thu, 25 Oct 2012 12:23:08 +0000 (14:23 +0200)]
ipa-inline.c (recursive_inlining): Redirect to master clone before testing profitability.

* ipa-inline.c (recursive_inlining): Redirect to master
clone before testing profitability.

From-SVN: r192807

11 years agoconfig.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.
Ralf Corsepius [Thu, 25 Oct 2012 12:06:06 +0000 (14:06 +0200)]
config.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.

2012-10-25  Ralf Corsépius <ralf.corsepius@rtems.org>

* config.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.

From-SVN: r192805

11 years agore PR target/54902 (, ICE (segfault) building on arm-linux-gnueabi)
Richard Biener [Thu, 25 Oct 2012 11:16:12 +0000 (11:16 +0000)]
re PR target/54902 (, ICE (segfault) building on arm-linux-gnueabi)

2012-10-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/54902
* tree-ssa-pre.c (fini_eliminate): Return TODO.
(do_pre): Adjust.
(execute_fre): Likewise.
* tree-ssa-tailmerge.c (tail_merge_optimize): Delete unreachable
blocks before computing dominators.

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

From-SVN: r192804

11 years agore PR c++/34892 (ICE with ellipsis in default template argument)
Paolo Carlini [Thu, 25 Oct 2012 09:12:22 +0000 (09:12 +0000)]
re PR c++/34892 (ICE with ellipsis in default template argument)

/cp
2012-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/34892
* parser.c (cp_parser_template_parameter): When
cp_parser_parameter_declaration parsed a default argument don't
see if *is_parameter_pack needs setting.

/testsuite
2012-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/34892
* g++.dg/template/crash114.C: New.

From-SVN: r192802

11 years agoexpr.c (emit_block_move_via_loop): Use simplify_gen_binary rather than gen_rtx_PLUS.
Richard Sandiford [Thu, 25 Oct 2012 09:08:09 +0000 (09:08 +0000)]
expr.c (emit_block_move_via_loop): Use simplify_gen_binary rather than gen_rtx_PLUS.

gcc/
* expr.c (emit_block_move_via_loop): Use simplify_gen_binary
rather than gen_rtx_PLUS.

From-SVN: r192801

11 years agoconfig.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.
Ralf Corsepius [Thu, 25 Oct 2012 08:08:04 +0000 (10:08 +0200)]
config.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.

2012-10-25  Ralf Corsépius <ralf.corsepius@rtems.org>

* config.host (sh*-*-rtems*): Add sh*-*-elf*'s extra_parts.

From-SVN: r192799

11 years agore PR bootstrap/55068 (AIX bootstrap in push_reload() after LRA merge)
Vladimir Makarov [Thu, 25 Oct 2012 04:19:43 +0000 (04:19 +0000)]
re PR bootstrap/55068 (AIX bootstrap in push_reload() after LRA merge)

2012-10-24  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/55068
PR regression/55050
* ira.c (setup_reg_renumber): Fix assert.
* ira-emit.c (emit_move_list): Update equivalences only for LRA.

From-SVN: r192797

11 years agoconfig.host (powerpc-*-rtems*): Add rs6000/t-savresfgpr to tmake_file.
Sebastian Huber [Thu, 25 Oct 2012 03:30:23 +0000 (03:30 +0000)]
config.host (powerpc-*-rtems*): Add rs6000/t-savresfgpr to tmake_file.

2012-10-25  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* config.host (powerpc-*-rtems*): Add rs6000/t-savresfgpr to
tmake_file.

From-SVN: r192795

11 years agore PR bootstrap/55067 (AIX bootstrap failure due to lra.c loc_t)
Vladimir Makarov [Thu, 25 Oct 2012 02:31:31 +0000 (02:31 +0000)]
re PR bootstrap/55067 (AIX bootstrap failure due to lra.c loc_t)

2012-10-24  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/55067
* lra.c: Rename loc to sloc and loc_t to sloc_t.

From-SVN: r192794

11 years agoDaily bump.
GCC Administrator [Thu, 25 Oct 2012 00:19:23 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r192792

11 years agors6000.c (rs6000_density_test): Use dump_enabled_p instead of dump_kind_p.
Sharad Singhai [Wed, 24 Oct 2012 23:09:30 +0000 (23:09 +0000)]
rs6000.c (rs6000_density_test): Use dump_enabled_p instead of dump_kind_p.

2012-10-24  Sharad Singhai  <singhai@google.com>

* config/rs6000/rs6000.c (rs6000_density_test): Use dump_enabled_p
          instead of dump_kind_p.

From-SVN: r192788

11 years agore PR c++/54928 (Infinite output with after ICE with macro)
Manuel López-Ibáñez [Wed, 24 Oct 2012 22:01:50 +0000 (22:01 +0000)]
re PR c++/54928 (Infinite output with after ICE with macro)

2012-10-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c++/54928
* tree-diagnostic.c (maybe_unwind_expanded_macro_loc):
Use diagnostic_append_note.
* diagnostic.c (diagnostic_build_prefix): Make diagnostic const.
(default_diagnostic_finalizer): Do not destroy prefix here.
(diagnostic_report_diagnostic): Destroy it here.
(diagnostic_append_note): New.
* diagnostic.h (diagnostic_append_note): Declare.

From-SVN: r192786

11 years agoRequire fpic on gcc.target/i386/pr55049-1.c
H.J. Lu [Wed, 24 Oct 2012 21:52:57 +0000 (14:52 -0700)]
Require fpic on gcc.target/i386/pr55049-1.c

From-SVN: r192785

11 years agoAdd a testcase for PR bootstrap/55049
H.J. Lu [Wed, 24 Oct 2012 21:49:36 +0000 (14:49 -0700)]
Add a testcase for PR bootstrap/55049

PR bootstrap/55049
* gcc.target/i386/pr55049-1.c: New test.

From-SVN: r192784

11 years agore PR target/55061 (libbacktrace build fails during bootstrap on powerpc-apple-darwin9)
Ian Lance Taylor [Wed, 24 Oct 2012 21:09:55 +0000 (21:09 +0000)]
re PR target/55061 (libbacktrace build fails during bootstrap on powerpc-apple-darwin9)

PR target/55061
* configure.ac: Check whether -funwind-tables option works.
* configure: Rebuild.

From-SVN: r192782

11 years agoMAINTAINERS (Write After Approval): Add myself.
Sharad Singhai [Wed, 24 Oct 2012 20:42:02 +0000 (20:42 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2012-10-24  Sharad Singhai  <singhai@google.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r192781

11 years agotype_traits (common_type): Implement LWG 2141.
Daniel Kruegler [Wed, 24 Oct 2012 20:37:05 +0000 (20:37 +0000)]
type_traits (common_type): Implement LWG 2141.

2012-10-24  Daniel Krugler  <daniel.kruegler@gmail.com>

* include/std/type_traits (common_type): Implement LWG 2141.
* testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
Update.
* testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
* testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
Likewise.
* testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
Likewise.
* testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.

From-SVN: r192780

11 years agore PR rtl-optimization/55055 (RTL check: expected code 'reg', have 'subreg' in rhs_re...
Vladimir Makarov [Wed, 24 Oct 2012 20:02:08 +0000 (20:02 +0000)]
re PR rtl-optimization/55055 (RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:1123)

2012-10-24  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55055
* lra-spills.c (alter_subregs): New function.
(lra_hard_reg_substitution): Use it.

From-SVN: r192779

11 years agoClarify ABI requirements for data-logging functions.
Torvald Riegel [Wed, 24 Oct 2012 19:52:18 +0000 (19:52 +0000)]
Clarify ABI requirements for data-logging functions.

* libitm.texi: Clarify ABI requirements for data-logging functions.

From-SVN: r192778

11 years agoAsk dispatch whether it requires serial mode.
Torvald Riegel [Wed, 24 Oct 2012 19:52:02 +0000 (19:52 +0000)]
Ask dispatch whether it requires serial mode.

* retry.cc (gtm_thread::decide_begin_dispatch): Ask dispatch whether
it requires serial mode instead of assuming that for certain
dispatchs.
* dispatch.h (abi_dispatch::requires_serial): New.
(abi_dispatch::abi_dispatch): Adapt.
* method-gl.cc (gl_wt_dispatch::gl_wt_dispatch): Adapt.
* method-ml.cc (ml_wt_dispatch::ml_wt_dispatch): Same.
* method-serial.cc (serialirr_dispatch::serialirr_dispatch,
serial_dispatch::serial_dispatch,
serialirr_onwrite_dispatch::serialirr_onwrite_dispatch): Same.

From-SVN: r192777

11 years agomksysinfo: Define SIGPOLL and SIGCLD if necessary.
Ian Lance Taylor [Wed, 24 Oct 2012 19:00:44 +0000 (19:00 +0000)]
mksysinfo: Define SIGPOLL and SIGCLD if necessary.

From-SVN: r192775

11 years agoMAINTAINERS: Update email address.
Eric Christopher [Wed, 24 Oct 2012 18:26:01 +0000 (18:26 +0000)]
MAINTAINERS: Update email address.

2012-10-24  Eric Christopher  <echristo@gmail.com>

    * MAINTAINERS: Update email address.

From-SVN: r192774

11 years agodumpfile.c (dump_enabled_p): Make it inline and move the definition to dumpfile.h.
Sharad Singhai [Wed, 24 Oct 2012 17:58:14 +0000 (17:58 +0000)]
dumpfile.c (dump_enabled_p): Make it inline and move the definition to dumpfile.h.

2012-10-24  Sharad Singhai  <singhai@google.com>

* dumpfile.c (dump_enabled_p): Make it inline and move the definition
to dumpfile.h.
(dump_kind_p): Deleted. Functionality replaced by dump_enabled_p.
Make alt_dump_file extern.
* dumpfile.h (dump_enabled_p): Move inline definition here.
(dump_kind_p): Delete declaration.
Add extern declaration of alt_dump_file.
* toplev.c: Move dump_file and dump_file_name to dumpfile.c.
* tree-vect-loop-manip.c: Replace all uses of dump_kind_p with
dump_enabled_p.
* tree-vectorizer.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vect-slp.c: Likewise.

From-SVN: r192773

11 years agoexpmed.c (lowpart_bit_field_p): Add missing == 0 check.
Richard Sandiford [Wed, 24 Oct 2012 17:53:42 +0000 (17:53 +0000)]
expmed.c (lowpart_bit_field_p): Add missing == 0 check.

gcc/
* expmed.c (lowpart_bit_field_p): Add missing == 0 check.

From-SVN: r192772

11 years agore PR bootstrap/55049 (bootstrap failed with --with-multilib-list=m32,m64,mx32)
Vladimir Makarov [Wed, 24 Oct 2012 17:35:37 +0000 (17:35 +0000)]
re PR bootstrap/55049 (bootstrap failed with  --with-multilib-list=m32,m64,mx32)

2012-10-24  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/55049
* lra-constraints.c (extract_loc_address_regs): Pass top_p for
ZERO_EXTEND operand.

From-SVN: r192771

11 years agore PR bootstrap/55048 (libjava bootstrap failure on trunk after LRA merge)
Vladimir Makarov [Wed, 24 Oct 2012 15:35:12 +0000 (15:35 +0000)]
re PR bootstrap/55048 (libjava bootstrap failure on trunk after LRA merge)

2012-10-24  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/55048
* lra-constraints.c (update_ebb_live_info): Skip
non-NOTE_INSN_BASIC_BLOCK notes.

From-SVN: r192770

11 years agore PR fortran/55037 ([OOP] ICE with local allocatable variable of abstract type)
Janus Weil [Wed, 24 Oct 2012 15:23:25 +0000 (17:23 +0200)]
re PR fortran/55037 ([OOP] ICE with local allocatable variable of abstract type)

2012-10-24  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55037
* trans-expr.c (gfc_conv_procedure_call): Move a piece of code and
remove an assert.

2012-10-24  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55037
* gfortran.dg/class_dummy_4.f03: New.

From-SVN: r192768

11 years agore PR libstdc++/55047 (operator() in std::exponential_distribution may call log(0))
Haakan Younes [Wed, 24 Oct 2012 12:20:19 +0000 (12:20 +0000)]
re PR libstdc++/55047 (operator() in std::exponential_distribution may call log(0))

2012-10-24   Haakan Younes  <hyounes@google.com>
     Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/55047
* include/bits/random.h (exponential_distribution<>::operator):
Fix formula to std::log(result_type(1) - __aurng()).
* include/bits/random.tcc: Likewise, everywhere.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r192762

11 years agoforce-parallel-6.c: Adjust the loops.
Dominique d'Humieres [Wed, 24 Oct 2012 09:46:06 +0000 (11:46 +0200)]
force-parallel-6.c: Adjust the loops.

2012-10-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

        * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.

From-SVN: r192761

11 years agore PR rtl-optimization/55010 (Internal consistency failure : invalid rtl sharing...
Jakub Jelinek [Wed, 24 Oct 2012 09:13:09 +0000 (11:13 +0200)]
re PR rtl-optimization/55010 (Internal consistency failure : invalid rtl sharing found in the insn)

PR rtl-optimization/55010
* cse.c (fold_rtx) <RTX_COMPARE>: Call copy_rtx on folded_arg{0,1}
before passing it to simplify_relational_operation.

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

From-SVN: r192760

11 years agore PR debug/54828 (ICE in based_loc_descr at dwarf2out.c:10560 with -g -O0)
Jakub Jelinek [Wed, 24 Oct 2012 09:08:56 +0000 (11:08 +0200)]
re PR debug/54828 (ICE in based_loc_descr at dwarf2out.c:10560 with -g -O0)

PR debug/54828
* gimple.h (is_gimple_sizepos): New inline function.
* gimplify.c (gimplify_one_sizepos): Use it.  Remove useless
final assignment to expr variable.
* tree.c (RETURN_TRUE_IF_VAR): Return true also if
!TYPE_SIZES_GIMPLIFIED (type) and _t is going to be gimplified
into a local temporary.

* g++.dg/debug/pr54828.C: New test.

From-SVN: r192759

11 years agoUse define_memory_constraint on sparc when necessary.
David S. Miller [Wed, 24 Oct 2012 05:59:27 +0000 (05:59 +0000)]
Use define_memory_constraint on sparc when necessary.

* config/sparc/constraints.md ("T", "W"): Change
definitions to use define_memory_constraint.  Do not match
'reg'.
* config/sparc/sparc.c (memory_ok_for_ldd): Remove all non-MEM
handling code, update comment.

From-SVN: r192757

11 years agoextend.texi (Extended Asm): The '+' constraint does not require a register.
Ian Lance Taylor [Wed, 24 Oct 2012 04:45:55 +0000 (04:45 +0000)]
extend.texi (Extended Asm): The '+' constraint does not require a register.

* doc/extend.texi (Extended Asm): The '+' constraint does not
require a register.

From-SVN: r192756

11 years agotree-ssa-threadedge.c (thread_across_edge): Remove unused parameter in call to cond_a...
Jeff Law [Wed, 24 Oct 2012 00:43:24 +0000 (18:43 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Remove unused parameter in call to cond_arg_set_in_bb.

       * tree-ssa-threadedge.c (thread_across_edge): Remove unused
        parameter in call to cond_arg_set_in_bb.

From-SVN: r192754

11 years agoDaily bump.
GCC Administrator [Wed, 24 Oct 2012 00:18:36 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r192753

11 years agovect-82_64.c: Adjust the dump file.
Dominique d'Humieres [Wed, 24 Oct 2012 00:16:55 +0000 (02:16 +0200)]
vect-82_64.c: Adjust the dump file.

2012-10-23  Dominique d'Humieres  <dominiq@lps.ens.fr>

        * gcc.dg/vect/vect-82_64.c: Adjust the dump file.
        * gcc.dg/vect/vect-83_64.c: Likewise.

From-SVN: r192750

11 years agore PR c++/54922 ([C++11][DR 1359] constexpr constructors require initialization of...
Paolo Carlini [Tue, 23 Oct 2012 23:43:21 +0000 (23:43 +0000)]
re PR c++/54922 ([C++11][DR 1359] constexpr constructors require initialization of all union members)

/cp
2012-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54922
* semantics.c (cx_check_missing_mem_inits): Handle anonymous union
members.

/testsuite
2012-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54922
* g++.dg/cpp0x/constexpr-union4.C: New.

From-SVN: r192749

11 years agore PR bootstrap/54820 (ada: cannot find -lstdc++ since 4.8.0 20121002)
Eric Botcazou [Tue, 23 Oct 2012 22:57:43 +0000 (22:57 +0000)]
re PR bootstrap/54820 (ada: cannot find -lstdc++ since 4.8.0 20121002)

PR bootstrap/54820
* configure.ac (have_static_libs): Force 'no' for GCC version < 4.5.
* configure: Regenerate.

From-SVN: r192748

11 years ago* MAINTAINERS (aarch64): Add Marcus and myself.
Richard Earnshaw [Tue, 23 Oct 2012 22:29:38 +0000 (22:29 +0000)]
* MAINTAINERS (aarch64): Add Marcus and myself.

From-SVN: r192747

11 years agotree-ssa-threadedge.c (cond_arg_set_in_bb): Remove unused debugging argument.
Jeff Law [Tue, 23 Oct 2012 21:27:52 +0000 (15:27 -0600)]
tree-ssa-threadedge.c (cond_arg_set_in_bb): Remove unused debugging argument.

       * tree-ssa-threadedge.c (cond_arg_set_in_bb): Remove unused
        debugging argument.

From-SVN: r192746

11 years agore PR tree-optimization/54985 (dom optimization erroneous remove conditional goto.)
Jeff Law [Tue, 23 Oct 2012 20:33:49 +0000 (14:33 -0600)]
re PR tree-optimization/54985 (dom optimization erroneous remove conditional goto.)

        PR tree-optimization/54985
        * tree-ssa-threadedge.c (cond_arg_set_in_bb): New function
        * extracted
        from thread_across_edge.
        (thread_across_edge): Use it in all cases where we might thread
        across a back edge.

        * gcc.c-torture/execute/pr54985.c: New test.

From-SVN: r192745

11 years agolra-constraints.c (update_ebb_live_info): Process empty blocks.
Vladimir Makarov [Tue, 23 Oct 2012 20:10:27 +0000 (20:10 +0000)]
lra-constraints.c (update_ebb_live_info): Process empty blocks.

2012-10-23  Vladimir Makarov  <vmakarov@redhat.com>

* lra-constraints.c (update_ebb_live_info): Process empty blocks.

From-SVN: r192743

11 years agoexpmed.c (store_split_bit_field): Update the calls to extract_fixed_bit_field.
Richard Sandiford [Tue, 23 Oct 2012 19:17:35 +0000 (19:17 +0000)]
expmed.c (store_split_bit_field): Update the calls to extract_fixed_bit_field.

gcc/
* expmed.c (store_split_bit_field): Update the calls to
extract_fixed_bit_field.  In the big-endian case, always
use the mode of OP0 to count the number of significant bits.
(extract_bit_field_1): Remove unit, offset, bitpos and
byte_offset from the outermost scope.  Express conditions in terms
of bitnum rather than offset, bitpos and byte_offset.  Move the
computation of MODE1 to the block that needs it.  Use MODE unless
the TMODE-based mode_for_size calculation succeeds.  Split the
plain move cases into two, one for memory accesses and one for
register accesses.  Generalize the memory case, freeing it from
the old register-based endian checks.  Move the INT_MODE calculation
above the code that needs it.  Use simplify_gen_subreg to handle
multiword OP0s.  If the field still spans several words, pass it
directly to extract_split_bit_field.  Assume after that point
that both targets and register sources fit within a word.
Replace x-prefixed variables with non-prefixed forms.
Compute the bitpos for ext(z)v register operands directly in the
chosen unit size, rather than going through an intermediate
BITS_PER_WORD unit size.  Simplify the containment check
used when forcing OP0 into a register.  Update the call to
extract_fixed_bit_field.
(extract_fixed_bit_field): Replace the bitpos and offset parameters
with a single bitnum parameter, of the same form as extract_bit_field.
Assume that OP0 contains the full field.  Simplify the memory offset
calculation and containment check for volatile bitfields.  Make the
offset explicit when volatile bitfields force a misaligned access.
Remove WARNED and fix long lines.  Assert that the processed OP0
has an integral mode.
(store_split_bit_field): Update the call to store_fixed_bit_field.

From-SVN: r192741

11 years agoexpmed.c (lowpart_bit_field_p): New function.
Richard Sandiford [Tue, 23 Oct 2012 19:14:09 +0000 (19:14 +0000)]
expmed.c (lowpart_bit_field_p): New function.

gcc/
* expmed.c (lowpart_bit_field_p): New function.
(store_bit_field_1): Remove unit, offset, bitpos and byte_offset
from the outermost scope.  Express conditions in terms of bitnum
rather than offset, bitpos and byte_offset.  Split the plain move
cases into two, one for memory accesses and one for register accesses.
Allow simplify_gen_subreg to fail rather than calling validate_subreg.
Move the handling of multiword OP0s after the code that coerces VALUE
to an integer mode.  Use simplify_gen_subreg for this case and assert
that it succeeds.  If the field still spans several words, pass it
directly to store_split_bit_field.  Assume after that point that
both sources and register targets fit within a word.  Replace
x-prefixed variables with non-prefixed forms.  Compute the bitpos
for insv register operands directly in the chosen unit size, rather
than going through an intermediate BITS_PER_WORD unit size.
Update the call to store_fixed_bit_field.
(store_fixed_bit_field): Replace the bitpos and offset parameters
with a single bitnum parameter, of the same form as store_bit_field.
Assume that OP0 contains the full field.  Simplify the memory offset
calculation.  Assert that the processed OP0 has an integral mode.
(store_split_bit_field): Update the call to store_fixed_bit_field.

From-SVN: r192740

11 years agore PR debug/54508 (Wrong debug information emitted if data members not referenced)
Paul Koning [Tue, 23 Oct 2012 18:44:27 +0000 (14:44 -0400)]
re PR debug/54508 (Wrong debug information emitted if data members not referenced)

PR debug/54508
* dwarf2out.c (prune_unused_types_prune): If pruning a class and
not all its children were marked, add DW_AT_declaration flag.

* g++.dg/debug/dwarf2/pr54508.C: New.

From-SVN: r192739

11 years agore PR c++/54844 (ice tsubst_copy, at cp/pt.c:12352)
Jakub Jelinek [Tue, 23 Oct 2012 18:04:55 +0000 (20:04 +0200)]
re PR c++/54844 (ice tsubst_copy, at cp/pt.c:12352)

PR c++/54844
* pt.c (tsubst_copy, tsubst_copy_and_build) <case SIZEOF_EXPR>: Use
tsubst instead of tsubst_copy* on types.

* g++.dg/template/sizeof14.C: New test.

From-SVN: r192736

11 years agoruntime: Disable crash tests that runs go tool.
Ian Lance Taylor [Tue, 23 Oct 2012 18:01:06 +0000 (18:01 +0000)]
runtime: Disable crash tests that runs go tool.

From-SVN: r192735

11 years agore PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target...
Jakub Jelinek [Tue, 23 Oct 2012 17:55:56 +0000 (19:55 +0200)]
re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target specific option mismatch)

PR c++/54988
* decl2.c (cplus_decl_attributes): Don't return early
if attributes is NULL.

* c-c++-common/pr54988.c: New test.

From-SVN: r192734

11 years agoAArch64 [8/10] Fixup botched commit.
Marcus Shawcroft [Tue, 23 Oct 2012 17:36:39 +0000 (17:36 +0000)]
AArch64 [8/10] Fixup botched commit.

From-SVN: r192733

11 years agoAArch64 [1/10]
Ian Bolton [Tue, 23 Oct 2012 17:35:16 +0000 (17:35 +0000)]
AArch64 [1/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    James Greenhalgh  <james.greenhalgh@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* config.gcc: Add AArch64.
* configure.ac: Add AArch64 TLS support detection.
* configure: Regenerate.

Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192732

11 years agoAArch64 [10/10]
Yufeng Zhang [Tue, 23 Oct 2012 17:30:49 +0000 (17:30 +0000)]
AArch64 [10/10]

2012-10-23  Yufeng Zhang  <yufeng.zhang@arm.com>

* config/cpu/aarch64/cxxabi_tweaks.h: New file.
* configure.host: Enable aarch64.

From-SVN: r192731

11 years agoAArch64 [9/10]
Ian Bolton [Tue, 23 Oct 2012 17:29:35 +0000 (17:29 +0000)]
AArch64 [9/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* configure.tgt: Add AArch64.

Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192730

11 years agoAArch64 [8/10]
Ian Bolton [Tue, 23 Oct 2012 17:27:13 +0000 (17:27 +0000)]
AArch64 [8/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* config.host (aarch64*-*-elf, aarch64*-*-linux*): New.
* config/aarch64/crti.S: New file.
* config/aarch64/crtn.S: New file.
* config/aarch64/linux-unwind.h: New file.
* config/aarch64/sfp-machine.h: New file.
* config/aarch64/sync-cache.c: New file.
* config/aarch64/t-aarch64: New file.
* config/aarch64/t-softfp: New file.

Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192729

11 years agoAArch64 [7/10]
Ian Bolton [Tue, 23 Oct 2012 17:24:58 +0000 (17:24 +0000)]
AArch64 [7/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* configure.ac: Enable AArch64.
* configure: Regenerate.

Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192728

11 years agoAArch64 [6/10]
Sofiane Naci [Tue, 23 Oct 2012 17:22:48 +0000 (17:22 +0000)]
AArch64 [6/10]

2012-10-23  Sofiane Naci <sofiane.naci@arm.com>

Mark libatomic unsupported in AArch64.

* configure.tgt: Mark libatomic unsupported.

From-SVN: r192727

11 years agoAArch64 [4/10]
Ian Bolton [Tue, 23 Oct 2012 17:20:56 +0000 (17:20 +0000)]
AArch64 [4/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* lib/target-supports.exp
(check_profiling_available): Add AArch64.
(check_effective_target_vect_int): Likewise.
(check_effective_target_vect_shift): Likewise.
(check_effective_target_vect_float): Likewise.
(check_effective_target_vect_double): Likewise.
(check_effective_target_vect_widen_mult_qi_to_hi): Likewise.
(check_effective_target_vect_widen_mult_hi_to_si): Likewise.
(check_effective_target_vect_pack_trunc): Likewise.
(check_effective_target_vect_unpack): Likewise.
(check_effective_target_vect_hw_misalign): Likewise.
(check_effective_target_vect_short_mult): Likewise.
(check_effective_target_vect_int_mult): Likewise.
(check_effective_target_vect_stridedN): Likewise.
(check_effective_target_sync_int_long): Likewise.
(check_effective_target_sync_char_short): Likewise.
(check_vect_support_and_set_flags): Likewise.
(check_effective_target_aarch64_tiny): New.
(check_effective_target_aarch64_small): New.
(check_effective_target_aarch64_large): New.
* g++.dg/other/PR23205.C: Enable aarch64.
* g++.dg/other/pr23205-2.C: Likewise.
* g++.old-deja/g++.abi/ptrmem.C: Likewise.
* gcc.c-torture/execute/20101011-1.c: Likewise.
* gcc.dg/20020312-2.c: Likewise.
* gcc.dg/20040813-1.c: Likewise.
* gcc.dg/builtin-apply2.c: Likewise.
* gcc.dg/stack-usage-1.c: Likewise.

Co-Authored-By: Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192726

11 years agoAArch64 [5/10]
Ian Bolton [Tue, 23 Oct 2012 17:13:27 +0000 (17:13 +0000)]
AArch64 [5/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* gcc.target/aarch64/aapcs/aapcs64.exp: New file.
* gcc.target/aarch64/aapcs/abitest-2.h: New file.
* gcc.target/aarch64/aapcs/abitest-common.h: New file.
* gcc.target/aarch64/aapcs/abitest.S: New file.
* gcc.target/aarch64/aapcs/abitest.h: New file.
* gcc.target/aarch64/aapcs/func-ret-1.c: New file.
* gcc.target/aarch64/aapcs/func-ret-2.c: New file.
* gcc.target/aarch64/aapcs/func-ret-3.c: New file.
* gcc.target/aarch64/aapcs/func-ret-3.x: New file.
* gcc.target/aarch64/aapcs/func-ret-4.c: New file.
* gcc.target/aarch64/aapcs/func-ret-4.x: New file.
* gcc.target/aarch64/aapcs/ice_1.c: New file.
* gcc.target/aarch64/aapcs/ice_2.c: New file.
* gcc.target/aarch64/aapcs/ice_3.c: New file.
* gcc.target/aarch64/aapcs/ice_4.c: New file.
* gcc.target/aarch64/aapcs/ice_5.c: New file.
* gcc.target/aarch64/aapcs/macro-def.h: New file.
* gcc.target/aarch64/aapcs/test_1.c: New file.
* gcc.target/aarch64/aapcs/test_10.c: New file.
* gcc.target/aarch64/aapcs/test_11.c: New file.
* gcc.target/aarch64/aapcs/test_12.c: New file.
* gcc.target/aarch64/aapcs/test_13.c: New file.
* gcc.target/aarch64/aapcs/test_14.c: New file.
* gcc.target/aarch64/aapcs/test_15.c: New file.
* gcc.target/aarch64/aapcs/test_16.c: New file.
* gcc.target/aarch64/aapcs/test_17.c: New file.
* gcc.target/aarch64/aapcs/test_18.c: New file.
* gcc.target/aarch64/aapcs/test_19.c: New file.
* gcc.target/aarch64/aapcs/test_2.c: New file.
* gcc.target/aarch64/aapcs/test_20.c: New file.
* gcc.target/aarch64/aapcs/test_21.c: New file.
* gcc.target/aarch64/aapcs/test_22.c: New file.
* gcc.target/aarch64/aapcs/test_23.c: New file.
* gcc.target/aarch64/aapcs/test_24.c: New file.
* gcc.target/aarch64/aapcs/test_25.c: New file.
* gcc.target/aarch64/aapcs/test_26.c: New file.
* gcc.target/aarch64/aapcs/test_3.c: New file.
* gcc.target/aarch64/aapcs/test_4.c: New file.
* gcc.target/aarch64/aapcs/test_5.c: New file.
* gcc.target/aarch64/aapcs/test_6.c: New file.
* gcc.target/aarch64/aapcs/test_7.c: New file.
* gcc.target/aarch64/aapcs/test_8.c: New file.
* gcc.target/aarch64/aapcs/test_9.c: New file.
* gcc.target/aarch64/aapcs/test_align-1.c: New file.
* gcc.target/aarch64/aapcs/test_align-2.c: New file.
* gcc.target/aarch64/aapcs/test_align-3.c: New file.
* gcc.target/aarch64/aapcs/test_align-4.c: New file.
* gcc.target/aarch64/aapcs/test_complex.c: New file.
* gcc.target/aarch64/aapcs/test_int128.c: New file.
* gcc.target/aarch64/aapcs/test_quad_double.c: New file.
* gcc.target/aarch64/aapcs/type-def.h: New file.
* gcc.target/aarch64/aapcs/va_arg-1.c: New file.
* gcc.target/aarch64/aapcs/va_arg-10.c: New file.
* gcc.target/aarch64/aapcs/va_arg-11.c: New file.
* gcc.target/aarch64/aapcs/va_arg-12.c: New file.
* gcc.target/aarch64/aapcs/va_arg-2.c: New file.
* gcc.target/aarch64/aapcs/va_arg-3.c: New file.
* gcc.target/aarch64/aapcs/va_arg-4.c: New file.
* gcc.target/aarch64/aapcs/va_arg-5.c: New file.
* gcc.target/aarch64/aapcs/va_arg-6.c: New file.
* gcc.target/aarch64/aapcs/va_arg-7.c: New file.
* gcc.target/aarch64/aapcs/va_arg-8.c: New file.
* gcc.target/aarch64/aapcs/va_arg-9.c: New file.
* gcc.target/aarch64/aapcs/validate_memory.h: New file.
* gcc.target/aarch64/aarch64.exp: New file.
* gcc.target/aarch64/adc-1.c: New file.
* gcc.target/aarch64/adc-2.c: New file.
* gcc.target/aarch64/asm-1.c: New file.
* gcc.target/aarch64/clrsb.c: New file.
* gcc.target/aarch64/clz.c: New file.
* gcc.target/aarch64/ctz.c: New file.
* gcc.target/aarch64/csinc-1.c: New file.
* gcc.target/aarch64/csinv-1.c: New file.
* gcc.target/aarch64/csneg-1.c: New file.
* gcc.target/aarch64/extend.c: New file.
* gcc.target/aarch64/fcvt.x: New file.
* gcc.target/aarch64/fcvt_double_int.c: New file.
* gcc.target/aarch64/fcvt_double_long.c: New file.
* gcc.target/aarch64/fcvt_double_uint.c: New file.
* gcc.target/aarch64/fcvt_double_ulong.c: New file.
* gcc.target/aarch64/fcvt_float_int.c: New file.
* gcc.target/aarch64/fcvt_float_long.c: New file.
* gcc.target/aarch64/fcvt_float_uint.c: New file.
* gcc.target/aarch64/fcvt_float_ulong.c: New file.
* gcc.target/aarch64/ffs.c: New file.
* gcc.target/aarch64/fmadd.c: New file.
* gcc.target/aarch64/fnmadd-fastmath.c: New file.
* gcc.target/aarch64/frint.x: New file.
* gcc.target/aarch64/frint_double.c: New file.
* gcc.target/aarch64/frint_float.c: New file.
* gcc.target/aarch64/index.c: New file.
* gcc.target/aarch64/mneg-1.c: New file.
* gcc.target/aarch64/mneg-2.c: New file.
* gcc.target/aarch64/mneg-3.c: New file.
* gcc.target/aarch64/mnegl-1.c: New file.
* gcc.target/aarch64/mnegl-2.c: New file.
* gcc.target/aarch64/narrow_high-intrinsics.c: New file.
* gcc.target/aarch64/pic-constantpool1.c: New file.
* gcc.target/aarch64/pic-symrefplus.c: New file.
* gcc.target/aarch64/predefine_large.c: New file.
* gcc.target/aarch64/predefine_small.c: New file.
* gcc.target/aarch64/predefine_tiny.c: New file.
* gcc.target/aarch64/reload-valid-spoff.c: New file.
* gcc.target/aarch64/scalar_intrinsics.c: New file.
* gcc.target/aarch64/table-intrinsics.c: New file.
* gcc.target/aarch64/tst-1.c: New file.
* gcc.target/aarch64/vect-abs-compile.c: New file.
* gcc.target/aarch64/vect-abs.c: New file.
* gcc.target/aarch64/vect-abs.x: New file.
* gcc.target/aarch64/vect-compile.c: New file.
* gcc.target/aarch64/vect-faddv-compile.c: New file.
* gcc.target/aarch64/vect-faddv.c: New file.
* gcc.target/aarch64/vect-faddv.x: New file.
* gcc.target/aarch64/vect-fmax-fmin-compile.c: New file.
* gcc.target/aarch64/vect-fmax-fmin.c: New file.
* gcc.target/aarch64/vect-fmax-fmin.x: New file.
* gcc.target/aarch64/vect-fmaxv-fminv-compile.c: New file.
* gcc.target/aarch64/vect-fmaxv-fminv.x: New file.
* gcc.target/aarch64/vect-fp-compile.c: New file.
* gcc.target/aarch64/vect-fp.c: New file.
* gcc.target/aarch64/vect-fp.x: New file.
* gcc.target/aarch64/vect-mull-compile.c: New file.
* gcc.target/aarch64/vect-mull.c: New file.
* gcc.target/aarch64/vect-mull.x: New file.
* gcc.target/aarch64/vect.c: New file.
* gcc.target/aarch64/vect.x: New file.
* gcc.target/aarch64/vector_intrinsics.c: New file.
* gcc.target/aarch64/vfp-1.c: New file.
* gcc.target/aarch64/volatile-bitfields-1.c: New file.
* gcc.target/aarch64/volatile-bitfields-2.c: New file.
* gcc.target/aarch64/volatile-bitfields-3.c: New file.
* g++.dg/abi/aarch64_guard1.C: New file.

Co-Authored-By: Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192725

11 years agoAArch64 [2/10]
Ian Bolton [Tue, 23 Oct 2012 17:06:03 +0000 (17:06 +0000)]
AArch64 [2/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    James Greenhalgh  <james.greenhalgh@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen,thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* doc/invoke.texi (AArch64 Options): New.
* doc/md.texi (Machine Constraints): Add AArch64.

Co-Authored-By: Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192724

11 years agoAArch64 [3/10]
Ian Bolton [Tue, 23 Oct 2012 17:02:30 +0000 (17:02 +0000)]
AArch64 [3/10]

2012-10-23  Ian Bolton  <ian.bolton@arm.com>
    James Greenhalgh  <james.greenhalgh@arm.com>
    Jim MacArthur  <jim.macarthur@arm.com>
    Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
    Marcus Shawcroft  <marcus.shawcroft@arm.com>
    Nigel Stephens  <nigel.stephens@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <rearnsha@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>
    Stephen Thomas  <stephen.thomas@arm.com>
    Tejas Belagod  <tejas.belagod@arm.com>
    Yufeng Zhang  <yufeng.zhang@arm.com>

* common/config/aarch64/aarch64-common.c: New file.
* config/aarch64/aarch64-arches.def: New file.
* config/aarch64/aarch64-builtins.c: New file.
* config/aarch64/aarch64-cores.def: New file.
* config/aarch64/aarch64-elf-raw.h: New file.
* config/aarch64/aarch64-elf.h: New file.
* config/aarch64/aarch64-generic.md: New file.
* config/aarch64/aarch64-linux.h: New file.
* config/aarch64/aarch64-modes.def: New file.
* config/aarch64/aarch64-option-extensions.def: New file.
* config/aarch64/aarch64-opts.h: New file.
* config/aarch64/aarch64-protos.h: New file.
* config/aarch64/aarch64-simd.md: New file.
* config/aarch64/aarch64-tune.md: New file.
* config/aarch64/aarch64.c: New file.
* config/aarch64/aarch64.h: New file.
* config/aarch64/aarch64.md: New file.
* config/aarch64/aarch64.opt: New file.
* config/aarch64/arm_neon.h: New file.
* config/aarch64/constraints.md: New file.
* config/aarch64/gentune.sh: New file.
* config/aarch64/iterators.md: New file.
* config/aarch64/large.md: New file.
* config/aarch64/predicates.md: New file.
* config/aarch64/small.md: New file.
* config/aarch64/sync.md: New file.
* config/aarch64/t-aarch64-linux: New file.
* config/aarch64/t-aarch64: New file.

Co-Authored-By: Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
Co-Authored-By: Jim MacArthur <jim.macarthur@arm.com>
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
Co-Authored-By: Nigel Stephens <nigel.stephens@arm.com>
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
Co-Authored-By: Stephen Thomas <stephen.thomas@arm.com>
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
Co-Authored-By: Yufeng Zhang <yufeng.zhang@arm.com>
From-SVN: r192723

11 years agore PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target...
Jakub Jelinek [Tue, 23 Oct 2012 16:55:56 +0000 (18:55 +0200)]
re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target specific option mismatch)

PR c++/54988
* decl2.c (cplus_decl_attributes): Don't return early
if attributes is NULL.

* c-c++-common/pr54988.c: New test.

From-SVN: r192722

11 years agotree-ssa-operands.h (struct def_optype_d, [...]): Remove.
Michael Matz [Tue, 23 Oct 2012 16:29:03 +0000 (16:29 +0000)]
tree-ssa-operands.h (struct def_optype_d, [...]): Remove.

* tree-ssa-operands.h (struct def_optype_d, def_optype_p): Remove.
(ssa_operands.free_defs): Remove.
(DEF_OP_PTR, DEF_OP): Remove.
(struct ssa_operand_iterator_d): Remove 'defs', add 'flags'
members, rename 'phi_stmt' to 'stmt', 'phi_i' to 'i' and 'num_phi'
to 'numops'.
* gimple.h (gimple_statement_with_ops.def_ops): Remove.
(gimple_def_ops, gimple_set_def_ops): Remove.
(gimple_vdef_op): Don't take const gimple, adjust.
(gimple_asm_input_op, gimple_asm_input_op_ptr,
gimple_asm_set_input_op, gimple_asm_output_op,
gimple_asm_output_op_ptr, gimple_asm_set_output_op): Adjust asserts,
and rewrite to move def operands to front.
(gimple_asm_clobber_op, gimple_asm_set_clobber_op,
gimple_asm_label_op, gimple_asm_set_label_op): Correct asserts.
* tree-ssa-operands.c (build_defs): Remove.
(init_ssa_operands): Don't initialize it.
(fini_ssa_operands): Don't free it.
(cleanup_build_arrays): Don't truncate it.
(finalize_ssa_stmt_operands): Don't assert on it.
(alloc_def, add_def_op, append_def): Remove.
(finalize_ssa_defs): Remove building of def_ops list.
(finalize_ssa_uses): Don't mark for SSA renaming here, ...
(add_stmt_operand): ... but here, don't call append_def.
(get_indirect_ref_operands): Remove recurse_on_base argument.
(get_expr_operands): Adjust call to get_indirect_ref_operands.
(verify_ssa_operands): Don't check def operands.
(free_stmt_operands): Don't free def operands.
* gimple.c (gimple_copy): Don't clear def operands.
* tree-flow-inline.h (op_iter_next_use): Adjust to explicitely
handle def operand.
(op_iter_next_tree, op_iter_next_def): Ditto.
(clear_and_done_ssa_iter): Clear new fields.
(op_iter_init): Adjust to setup new iterator structure.
(op_iter_init_phiuse): Adjust.

From-SVN: r192721