Jürgen Urban [Tue, 4 Jun 2013 18:05:55 +0000 (18:05 +0000)]
gcc/
2013-06-03 Jürgen Urban <JuergenUrban@gmx.de>
* config.gcc (mipsr5900-*-elf*, mipsr5900el-*-elf*, mips64r5900-*-elf*)
(mips64r5900el-*-elf*): New configurations.
* config/mips/mips-cpus.def (r5900): New processor.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.c (mips_rtx_cost_data): Add an R5900 entry.
(mips_issue_rate): Handle PROCESSOR_R5900.
(mips_reorg_process_insns): Force reorder mode for the R5900.
* config/mips/mips.h (TARGET_MIPS5900): Define.
(ISA_HAS_CONDMOVE, ISA_HAS_PREFETCH, ISA_HAS_HILO_INTERLOCKS): Include
TARGET_MIPS5900.
(ISA_HAS_LOAD_DELAY, ISA_HAS_XFER_DELAY, ISA_HAS_FCMP_DELAY): Exclude
TARGET_MIPS5900.
* config/mips/mips.md (processor): Add r5900.
(MOVECC): Disallow CCmode conditions for TARGET_MIPS5900.
libgcc/
2013-06-03 Jürgen Urban <JuergenUrban@gmx.de>
* config.host (mipsr5900-*-elf*, mipsr5900el-*-elf*, mips64r5900-*-elf*)
(mips64r5900el-*-elf*): New configurations.
From-SVN: r199666
Balaji V. Iyer [Tue, 4 Jun 2013 16:44:22 +0000 (16:44 +0000)]
Fix Cilk Plus tests for simulators.
2013-06-04 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-c++-common/cilk-plus/AN/array_test1.c (main): Replaced argc, argv
parameters with void.
(main2): Removed argc parameter.
* c-c++-common/cilk-plus/AN/array_test2.c (main2): Likewise.
(main): Replaced argc, argv parameters with void.
* c-c++-common/cilk-plus/AN/array_test_ND.c (main): Likewise.
(main2): Removed argc parameter.
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c (main): Replaced argc
argv parameters with void. Added __asm volatile to avoid optimization
on argc, if necessary.
* c-c++-common/cilk-plus/AN/builtin_fn_mutating (main): Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double.c (main): Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double2.c (main): Likewise.
* c-c++-common/cilk-plus/AN/conditional.c (main): Likewise.
* c-c++-common/cilk-plus/AN/exec-once.c (main): Likewise.
* c-c++-common/cilk-plus/AN/exec-once2.c (main): Likewise.
* c-c++-common/cilk-plus/AN/fn_ptr.c (main): Likewise.
* c-c++-common/cilk-plus/AN/gather-scatter-errors.c (main): Likewise.
* c-c++-common/cilk-plus/AN/gather_scatter.c (main): Likewise.
* c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors2.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors3.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors4.c (main): Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch2.c (main): Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c (main): Likewise.
* c-c++-common/cilk-plus/AN/sec_reduce_return.c (main): Likewise.
* c-c++-common/cilk-plus/AN/test_builtin_return.c (main): Likewise.
* c-c++-common/cilk-plus/AN/vla.c (main): Likewise.
* c-c++-common/cilk-plus/AN/comma-exp.c (main): Replaced argc, argv
parameters with void.
(main2): Removed argc parameter.
* c-c++-common/cilk-plus/AN/if_test.c (main2): Likewise.
(main): Replaced argc, argv parameters with void.
* c-c++-common/cilk-plus/AN/fp_triplet_values (main2): Replace argc,
argv parameters with void. Also renamed this function as main, and
delete the existing main.
* c-c++-common/cilk-plus/AN/sec_implicit.c (main2): Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit2.c (main2): Likewise.
* c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c (main2): Likewise.
From-SVN: r199661
Ian Bolton [Tue, 4 Jun 2013 16:22:17 +0000 (16:22 +0000)]
AArch64 - Improve MOVI handling (5/5)
From-SVN: r199658
Ian Bolton [Tue, 4 Jun 2013 16:19:17 +0000 (16:19 +0000)]
AArch64 - Improve MOVI handling (4/5)
From-SVN: r199657
Ian Bolton [Tue, 4 Jun 2013 16:16:58 +0000 (16:16 +0000)]
AArch64 - Improve MOVI handling (3/5)
From-SVN: r199656
Ian Bolton [Tue, 4 Jun 2013 15:35:24 +0000 (15:35 +0000)]
AArch64 - Improve MOVI handling (2/5)
From-SVN: r199653
Ian Bolton [Tue, 4 Jun 2013 15:32:22 +0000 (15:32 +0000)]
AArch64 - Improve MOVI handling (1/5)
From-SVN: r199652
Alan Modra [Tue, 4 Jun 2013 14:11:28 +0000 (23:41 +0930)]
ibm-ldouble.c: Enable for little-endian.
* config/rs6000/ibm-ldouble.c: Enable for little-endian.
From-SVN: r199650
Catherine Moore [Tue, 4 Jun 2013 13:11:18 +0000 (09:11 -0400)]
mips.opt (meva): New.
2013-06-04 Catherine Moore <clm@codesourcery.com>
* config/mips/mips.opt (meva): New.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS):
Define __mips_eva.
(ASM_SPEC): Handle -meva.
* doc/invoke.texi (meva): Document.
From-SVN: r199649
Alan Modra [Tue, 4 Jun 2013 13:04:13 +0000 (22:34 +0930)]
rs6000.c (output_toc): Correct little-endian float constant output.
* config/rs6000/rs6000.c (output_toc): Correct little-endian float
constant output.
From-SVN: r199646
Tobias Burnus [Tue, 4 Jun 2013 10:20:32 +0000 (12:20 +0200)]
re PR fortran/37336 ([F03] Finish derived-type finalization)
2013-06-03 Tobias Burnus <burnus@net-b.de>
PR fortran/37336
* trans.h (gfc_build_final_call): Remove prototype.
(gfc_add_finalizer_call): Add prototype.
* trans-array.c (gfc_trans_dealloc_allocated): Support
* finalization.
(structure_alloc_comps): Update caller.
(gfc_trans_deferred_array): Call finalizer.
* trans-array.h (gfc_trans_dealloc_allocated): Update prototype.
* trans-decl.c (gfc_trans_deferred_vars): Don't
* deallocate/finalize
variables of the main program.
* trans-expr.c (gfc_conv_procedure_call): Support finalization.
* trans-openmp.c (gfc_omp_clause_dtor,
gfc_trans_omp_array_reduction): Update calls.
* trans-stmt.c (gfc_trans_deallocate): Avoid double deallocation
of alloc components.
* trans.c (gfc_add_finalizer_call): New function.
(gfc_deallocate_with_status,
gfc_deallocate_scalar_with_status): Call it
(gfc_build_final_call): Fix handling of scalar coarrays,
move up in the file and make static.
2013-06-03 Tobias Burnus <burnus@net-b.de>
PR fortran/37336
* gfortran.dg/finalize_12.f90: New.
* gfortran.dg/alloc_comp_basics_1.f90: Add BLOCK for
end of scope finalization.
* gfortran.dg/alloc_comp_constructor_1.f90: Ditto.
* gfortran.dg/allocatable_scalar_9.f90: Ditto.
* gfortran.dg/auto_dealloc_2.f90: Ditto.
* gfortran.dg/class_19.f03: Ditto.
* gfortran.dg/coarray_lib_alloc_1.f90: Ditto.
* gfortran.dg/coarray_lib_alloc_2.f90: Ditto.
* gfortran.dg/extends_14.f03: Ditto.
* gfortran.dg/move_alloc_4.f90: Ditto.
* gfortran.dg/typebound_proc_27.f03: Ditto.
From-SVN: r199643
Kyrylo Tkachov [Tue, 4 Jun 2013 08:56:32 +0000 (08:56 +0000)]
rtl.def: Add extra fourth optional field to define_cond_exec.
2013-06-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* rtl.def: Add extra fourth optional field to define_cond_exec.
* gensupport.c (process_one_cond_exec): Process attributes from
define_cond_exec.
* doc/md.texi: Document fourth field in define_cond_exec.
From-SVN: r199640
Eric Botcazou [Tue, 4 Jun 2013 07:41:18 +0000 (07:41 +0000)]
expmed.c (extract_bit_field_1): In the larger-than-a-word case...
* expmed.c (extract_bit_field_1): In the larger-than-a-word case, factor
out the processing order as in store_bit_field_1.
From-SVN: r199637
Manfred Schwarb [Tue, 4 Jun 2013 07:34:49 +0000 (09:34 +0200)]
bounds_check_7.f90: Remove "!
2013-06-03 Manfred Schwarb <manfred99@gmx.ch>
* gfortran.dg/bounds_check_7.f90: Remove "! {".
* gfortran.dg/coarray_poly_3.f90: Remove inactive, broken dg-*.
* gfortran.dg/default_initialization_5.f90: Update dg-do.
* gfortran.dg/g77/f77-edit-s-out.f: Fix broken dg-output.
* gfortran.dg/g77/f77-edit-t-out.f: Fix broken dg-output.
* gfortran.dg/g77/f77-edit-x-out.f: Fix broken dg-output.
* gfortran.dg/init_flag_11.f90: Fix broken dg-options.
* gfortran.dg/io_real_boz_3.f90: Add comment regarding dg-do run.
* gfortran.dg/io_real_boz_4.f90: Ditto.
* gfortran.dg/io_real_boz_5.f90: Ditto.
* gfortran.dg/namelist_print_1.f: Fix broken dg-output.
* gfortran.dg/read_x_eor.f90: Fix broken dg-output.
* gfortran.dg/repeat_1.f90: Improve dg-output pattern.
* gfortran.dg/spread_bounds_1.f90: Fix broken dg-output.
* gfortran.dg/transpose_2.f90: Fix dg-output.
From-SVN: r199636
Jan Hubicka [Tue, 4 Jun 2013 02:33:46 +0000 (04:33 +0200)]
re PR middle-end/57500 (Segfault in ipa_record_reference)
2013-06-04 Jan Hubicka <jh@suse.cz>
PR middle-end/57500
* cgraphunit.c (cgraph_process_same_body_aliases): Create
non-VAR_DECL node if it does not exist yet.
From-SVN: r199634
GCC Administrator [Tue, 4 Jun 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199633
Jason Merrill [Mon, 3 Jun 2013 23:17:06 +0000 (19:17 -0400)]
correct changelog date
From-SVN: r199630
Jason Merrill [Mon, 3 Jun 2013 23:13:10 +0000 (19:13 -0400)]
class.c (mark_type_abi_tags): New.
* class.c (mark_type_abi_tags): New.
(check_abi_tags): Use it.
From-SVN: r199629
Balaji V. Iyer [Mon, 3 Jun 2013 22:28:09 +0000 (22:28 +0000)]
Fixed a bug in expansion of array notations in if-statement conditions.
2013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
condition of the if-statement matches the rank of else-block and then-
block when array notations are used.
* c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
expression after the entire function body is parsed.
(c_parser_expr_no_commas): Delayed creating array notation expressions
to the end of function parsing.
* c-array-notation.c (fix_conditional_array_notations_1): Expanded the
whole if-statement instead of just the condition.
(expand_array_notation_exprs): Added MODIFY_EXPR case.
2013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-c++-common/cilk-plus/AN/if_test_errors.c (main): New testcase.
* c-c++-common/cilk-plus/AN/rank_mismatch.c: Added a '-w' option to
dg-option and an header comment.
From-SVN: r199628
Balaji V. Iyer [Mon, 3 Jun 2013 21:07:54 +0000 (21:07 +0000)]
re PR c/57474 (FAIL: c-c++-common/cilk-plus/AN/sec_implicit2?.c -fcilkplus (internal compiler error) on x86_64-apple-darwin10)
2013-06-03 Balaji V. Iyer <balaji.v.iyer@intel.com>
PR c/57474
* c-array-notation.c (build_array_notation_expr): Initialized rhs_length
array to NULL_TREE if they are unused. Also added a check for the
field to be NULL before its fields are used in future.
From-SVN: r199627
Paolo Carlini [Mon, 3 Jun 2013 20:39:50 +0000 (20:39 +0000)]
re PR c++/57419 (Access control doesn't stop referring to a deleted function)
/gcc/cp
2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57419
* decl2.c (mark_used): Add overload taking a tsubst_flags_t too.
* semantics.c (finish_qualified_id_expr): Use it.
* cp-tree.h: Update.
/gcc/testsuite
2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57419
* g++.dg/cpp0x/sfinae46.C: New.
* g++.dg/cpp0x/defaulted13.C: Adjust.
* g++.dg/cpp0x/defaulted2.C: Likewise.
* g++.dg/cpp0x/defaulted26.C: Likewise.
* g++.dg/cpp0x/defaulted3.C: Likewise.
* g++.dg/cpp0x/error1.C: Likewise.
* g++.dg/cpp0x/implicit1.C: Likewise.
* g++.dg/cpp0x/implicit11.C: Likewise.
* g++.dg/cpp0x/inh-ctor13.C: Likewise.
* g++.dg/cpp0x/initlist47.C: Likewise.
* g++.dg/cpp0x/initlist9.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-errloc.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-errloc2.C: Likewise.
* g++.dg/cpp0x/nsdmi-local.C: Likewise.
* g++.dg/cpp0x/union4.C: Likewise.
* g++.dg/template/crash108.C: Likewise.
* g++.dg/template/crash41.C: Likewise.
* g++.old-deja/g++.jason/local.C: Likewise.
* g++.old-deja/g++.law/visibility3.C: Likewise.
/libstdc++-v3
2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57419
* testsuite/20_util/default_delete/48631_neg.cc: Adjust.
From-SVN: r199626
Richard Sandiford [Mon, 3 Jun 2013 19:16:11 +0000 (19:16 +0000)]
gcc/
* config.gcc (mipsisa64sr71k-*-elf*, mipsisa64sb1-*-elf*)
(mipsisa64sb1el-*-elf*, mips64-*-elf*, mips64el-*-elf*)
(mips64orion-*-elf*, mips64orionel-*-elf*): Remove
target_cpu_default setting.
From-SVN: r199624
Teresa Johnson [Mon, 3 Jun 2013 18:39:04 +0000 (18:39 +0000)]
dumpfile.c (opt_info_switch_p): Change -fopt-info default to -fopt-info=optimized instead of all.
2013-06-03 Teresa Johnson <tejohnson@google.com>
* dumpfile.c (opt_info_switch_p): Change -fopt-info
default to -fopt-info=optimized instead of all.
* doc/invoke.texi: Ditto.
* tree-vectorizer.c (vectorize_loops): Emit loop vectorization
success under MSG_OPTIMIZED_LOCATIONS, and use dump_printf_loc.
(execute_vect_slp): Emit BB vectorization success under
MSG_OPTIMIZED_LOCATIONS.
* tree-vect-slp.c (vect_slp_transform_bb): Change
MSG_OPTIMIZED_LOCATIONS to MSG_NOTE.
* tree-vect-loop.c (vect_transform_loop): Ditto.
* testsuite/gcc.dg/vect/bb-slp-31.c: Update vect dump message.
* testsuite/gcc.dg/vect/bb-slp-14.c: Ditto.
* testsuite/gcc.dg/vect/fast-math-bb-slp-call-1.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-23.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-15.c: Ditto.
* testsuite/gcc.dg/vect/fast-math-bb-slp-call-2.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-24.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-16.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-25.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-pattern-2.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-17.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-1.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-26.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-18.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-2.c: Ditto.
* testsuite/gcc.dg/vect/no-tree-reassoc-bb-slp-12.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-27.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-19.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-3.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-28.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-4.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-29.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-5.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-6.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-8a.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-7.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-8b.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-8.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-9.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-10.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-11.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-20.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-cond-1.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-21.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-30.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-13.c: Ditto.
* testsuite/gcc.dg/vect/bb-slp-22.c: Ditto.
* testsuite/g++.dg/vect/slp-pr50413.cc: Ditto.
* testsuite/g++.dg/vect/slp-pr56812.cc: Ditto.
* testsuite/g++.dg/vect/slp-pr50819.cc: Ditto.
From-SVN: r199620
Jason Merrill [Mon, 3 Jun 2013 18:19:30 +0000 (14:19 -0400)]
re PR c++/57415 (New PPC testsuite failure C++ compound literarl expr unimplemented)
PR c++/57415
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Use TARGET_EXPR for C++.
From-SVN: r199616
Jakub Jelinek [Mon, 3 Jun 2013 17:38:39 +0000 (19:38 +0200)]
re PR rtl-optimization/57268 (c nested loops hang compiler in sched-deps.c)
PR rtl-optimization/57268
* sched-deps.c (sched_analyze_2): Don't flush_pedning_lists
if DEBUG_INSN_P (insn).
Reapply
2013-05-31 Dinar Temirbulatov <dinar@kugelworks.com>
PR rtl-optimization/57268
* sched-deps.c (sched_analyze_2): Flush dependence lists if
the sum of the read and write lists exceeds MAX_PENDING_LIST_LENGTH.
From-SVN: r199615
Yuri Rumyantsev [Mon, 3 Jun 2013 17:20:02 +0000 (17:20 +0000)]
i386.c (ix86_lea_outperforms): Fix formatting.
* config/i386/i386.c (ix86_lea_outperforms): Fix formatting.
(ix86_avoid_lea_for_addr): Likewise.
(exact_dependency_1): Likewise.
(ix86_adjust_cost): Likewise.
(swap_top_of_ready_list): Fix formatting and !reload_completed check
removed.
(do_reorder_for_imul): Fix typo, formatting and
!reload_completed check removed.
(ix86_sched_reorder): Fix typo and formatting.
(fold_builtin_cpu): Move M_INTEL_SLM at the end of processor types
list.
* config/i386/cpuinfo.c (INTEL_SLM): New enum value.
From-SVN: r199611
Sofiane Naci [Mon, 3 Jun 2013 14:55:56 +0000 (14:55 +0000)]
* config/aarch64/aarch64.md (*movdi_aarch64): Define "simd" attribute.
From-SVN: r199608
Christophe Lyon [Mon, 3 Jun 2013 13:04:35 +0000 (13:04 +0000)]
sanitizer_linux.cc (MemoryMappingLayout::Next): Cherry pick upstream r182922.
2013-06-03 Christophe Lyon <christophe.lyon@linaro.org>
* sanitizer_common/sanitizer_linux.cc (MemoryMappingLayout::Next):
Cherry pick upstream r182922.
From-SVN: r199606
Dinar Temirbulatov [Mon, 3 Jun 2013 11:10:54 +0000 (15:10 +0400)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r199603
Eric Botcazou [Mon, 3 Jun 2013 09:35:41 +0000 (09:35 +0000)]
varasm.c (output_constant): Minor formatting tweak.
* varasm.c (output_constant) <CONSTRUCTOR>: Minor formatting tweak.
<STRING_CST>: Likewise.
<VECTOR_CST>: Likewise.
From-SVN: r199599
Tobias Burnus [Mon, 3 Jun 2013 09:20:46 +0000 (11:20 +0200)]
re PR libfortran/57496 (I/O: WRITE(*,*) HUGE(0._10) gives SIGFPE with -ffpe-trap=overflow)
2013-06-01 Tobias Burnus <burnus@net-b.de>
PR fortran/57496
* io/write_float.def (ISFINITE2Q, ISFINITE2, ISFINITE2L,
* ISFINITE,
SIGNBIT2Q, SIGNBIT2, SIGNBIT2L, SIGNBIT, ISNAN2Q, ISNAN2,
ISNAN2L, ISNAN): New macros.
(output_float_FMT_G_,WRITE_FLOAT): Use them.
From-SVN: r199598
GCC Administrator [Mon, 3 Jun 2013 00:16:32 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199596
GCC Administrator [Sun, 2 Jun 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199590
Ed Smith-Rowland [Sat, 1 Jun 2013 21:39:50 +0000 (21:39 +0000)]
include/std/chrono: Collapse redundant 'inline' from 'inline constexpr'.
2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
include/std/chrono: Collapse redundant 'inline' from 'inline constexpr'.
include/std/tuple: Ditto.
include/bits/move.h: Ditto.
From-SVN: r199587
Janus Weil [Sat, 1 Jun 2013 19:12:57 +0000 (21:12 +0200)]
configure.ac: Add AC_HEADER_TIOCGWINSZ macro.
2013-06-01 Janus Weil <janus@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
* configure.ac: Add AC_HEADER_TIOCGWINSZ macro.
* config.in: Regenerated.
* configure: Regenerated.
2013-06-01 Janus Weil <janus@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
* error.c (get_terminal_width): Only limit the width if we're
outputting to a terminal. Try to determine width via ioctl.
Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r199585
Ed Smith-Rowland [Sat, 1 Jun 2013 18:37:47 +0000 (18:37 +0000)]
Implement N3642 - User-defined Literals for Standard Library Types
2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
Implement N3642 - User-defined Literals for Standard Library Types
* include/bits/parse_numbers.h: New.
* include/std/chrono: Add duration literal operators.
* include/bits/basic_string.h: Add string literal operators.
* include/Makefile.in: Add parse_numbers.h.
* include/Makefile.am: Ditto.
* testsuite/20_util/duration/literals/values.cc: New.
* testsuite/20_util/duration/literals/types.cc: New.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
* testsuite/21_strings/basic_string/literals/values.cc: New.
* testsuite/21_strings/basic_string/literals/types.cc: New.
From-SVN: r199584
Jan Hubicka [Sat, 1 Jun 2013 16:49:47 +0000 (18:49 +0200)]
re PR middle-end/57366 (gcc.dg/lto/attr-weakref-1 FAILs)
PR middle-end/57366
* cgraphunit.c (compile): When weakref is not supported,
set up transparent aliases before final output pass.
* varasm.c (assemble_alias): Do not try to do it here.
From-SVN: r199583
Jan Hubicka [Sat, 1 Jun 2013 16:40:31 +0000 (18:40 +0200)]
re PR middle-end/57467 (FAIL: gfortran.dg/gomp/appendix-a/a.(22.1|22.6|33.1).f90 -O (internal compiler error))
PR middle-end/57467
* passes.c (for_per_function): Skip unanalyzed functions.
From-SVN: r199582
Tobias Burnus [Sat, 1 Jun 2013 14:30:43 +0000 (16:30 +0200)]
decl.c (add_global_entry): Take locus.
2013-06-01 Tobias Burnus <burnus@net-b.de>
* decl.c (add_global_entry): Take locus.
(gfc_match_entry): Update call.
(gfc_match_end): Better error location.
* parse.c (parse_block_data, parse_module, add_global_procedure,
add_global_program): Use better locus data.
From-SVN: r199580
Jan Hubicka [Sat, 1 Jun 2013 13:08:53 +0000 (15:08 +0200)]
lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Rename to ...
* lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Rename to ...
(lto_symtab_merge_symbols_1): ... this one.
(lto_symtab_merge_cgraph_nodes): Rename to ...
(lto_symtab_merge_symbols): ... this one; simplify.
* cgraph.c (same_body_aliases_done): Rename to ...
(cpp_implicit_aliases_done): ... this one.
(cgraph_create_function_alias): Update.
(cgraph_same_body_alias): Update.
(dump_cgraph_node): Remove alias dumping; simplify
thunk dumping.
(verify_edge_corresponds_to_fndecl): Simplify.
* cgraph.h (symtab_node_base): Add cpp_implicit_alias,
alias_target.
(cgraph_node): Remove same_body_alias.
(varpool_node): Remove alias_of and extra_name_alias.
(same_body_aliases_done): Rename to ..
(cpp_implicit_aliases_done): ... this one.
(symtab_alias_ultimate_target): Add default parameter.
(symtab_resolve_alias): New function.
(fixup_same_cpp_alias_visibility): Declare.
(cgraph_function_node): Add default parameter.
(cgraph_node_asm_name): Likewise.
(cgraph_function_or_thunk_node): Add default parameter; do
not ICE when it is NULL.
(varpool_variable_node): Likewise.
* tree-emutls.c (create_emultls_var): Update.
(ipa_lower_emutls): Update.
* cgraphunit.c (cgraph_decide_is_function_needed): Update.
(cgraph_reset_node): Reset alias info.
(cgraph_finalize_function): Update.
(fixup_same_cpp_alias_visibility): Move to symtab.c.
(analyze_function): Simplify.
(cgraph_process_same_body_aliases): Simplify.
(analyze_functions): Fixup same body aliases.
(handle_alias_pairs): Simplify.
(assemble_thunk): Update.
(assemble_thunks_and_aliases): Update.
(output_weakrefs): Rewrite.
* lto-cgraph.c (lto_output_node): Rewrite alias handling.
(lto_output_varpool_node): Likewise.
(compute_ltrans_boundary): Remve assert.
(get_alias_symbol): New functoin.
(input_node): Rewrite alias handling.
(input_varpool_node): Likewise.
* ipa-pure-const.c (propagate_pure_const): Fix formating.
* ipa.c (process_references): Handle weakrefs correctly.
(symtab_remove_unreachable_nodes): Likewise.
* trans-mem.c (get_cg_data): Update.
(ipa_tm_create_version_alias): Update.
(ipa_tm_execute): Update.
* symtab.c (dump_symtab_base): Dump aliases.
(verify_symtab_base): Verify aliases.
(symtab_node_availability): New function.
(symtab_alias_ultimate_target): Simplify.
(fixup_same_cpp_alias_visibility): Move here from cgraphunit.c;
handle all the fixup cases.
(symtab_resolve_alias): New function.
* passes.c (ipa_write_summaries): Handle weakrefs.
* varpool.c (varpool_analyze_node): Simplify.
(assemble_aliases): Update.
(varpool_create_variable_alias): Simplify.
(varpool_extra_name_alias): Simplify.
* lto-streamer.h (lto_symtab_merge_cgraph_nodes): Rename to...
(lto_symtab_merge_symbols): ... this one.
* decl2.c (cp_write_global_declarations): Replace same_body_alias
by symbol.cpp_implicit_alias.
* lto.c (read_cgraph_and_symbols): Simplify dumping; Replace
lto_symtab_merge_cgraph_nodes by lto_symtab_merge_symbols.
(do_whole_program_analysis): Update dumping.
From-SVN: r199577
Dinar Temirbulatov [Sat, 1 Jun 2013 10:18:03 +0000 (10:18 +0000)]
revert: re PR rtl-optimization/57268 (c nested loops hang compiler in sched-deps.c)
2013-06-01 Dinar Temirbulatov <dinar@kugelworks.com>
Revert
PR rtl-optimization/57268
* sched-deps.c (sched_analyze_2): Flush dependence lists if
the sum of the read and write lists exceeds MAX_PENDING_LIST_LENGTH.
From-SVN: r199576
Tobias Burnus [Sat, 1 Jun 2013 08:39:59 +0000 (10:39 +0200)]
Partially reverted: 2013-05-31 Tobias Burnus <burnus@net-b.de>
2013-06-01 Tobias Burnus <burnus@net-b.de>
Partially reverted:
2013-05-31 Tobias Burnus <burnus@net-b.de>
PR middle-end/57073
* tree-ssa-math-opts.c (execute_cse_sincos): Move check
further up.
From-SVN: r199575
Tobias Burnus [Sat, 1 Jun 2013 07:50:28 +0000 (09:50 +0200)]
re PR fortran/57456 ([OOP] CLASS + CHARACTER ALLOCATE with typespec: For arrays, the typespec is ignored)
2013-06-01 Tobias Burnus <burnus@net-b.de>
PR fortran/57456
* gfortran.dg/class_array_17.f90: New.
From-SVN: r199573
Matt Burgess [Sat, 1 Jun 2013 00:20:49 +0000 (00:20 +0000)]
re PR other/56780 (--disable-install-libiberty still installs libiberty.a)
PR other/56780
* libiberty/configure.ac: Move test for --enable-install-libiberty
outside of the 'with_target_subdir' test so that it actually gets
run. Add output messages to show the test result.
* libiberty/configure: Regenerate.
* libiberty/Makefile.in (install_to_libdir): Place the
installation of the libiberty library in the same guard as that
used for the headers to prevent it being installed unless
requested via --enable-install-libiberty.
From-SVN: r199570
GCC Administrator [Sat, 1 Jun 2013 00:16:30 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199569
Dinar Temirbulatov [Fri, 31 May 2013 23:20:17 +0000 (23:20 +0000)]
re PR rtl-optimization/57268 (c nested loops hang compiler in sched-deps.c)
2013-05-31 Dinar Temirbulatov <dinar@kugelworks.com>
PR rtl-optimization/57268
* sched-deps.c (sched_analyze_2): Flush dependence lists if
the sum of the read and write lists exceeds MAX_PENDING_LIST_LENGTH.
From-SVN: r199564
Dinar Temirbulatov [Fri, 31 May 2013 22:33:38 +0000 (02:33 +0400)]
add myself(Dinar Temirbulatov) to write-after-approval access.
From-SVN: r199561
Eric Botcazou [Fri, 31 May 2013 19:41:36 +0000 (19:41 +0000)]
Fix typo
From-SVN: r199560
Eric Botcazou [Fri, 31 May 2013 19:22:52 +0000 (19:22 +0000)]
floatstore.lst: New.
* ada/acats/floatstore.lst: New.
* ada/acats/run_all.sh: Process it.
From-SVN: r199558
Eric Botcazou [Fri, 31 May 2013 19:12:05 +0000 (19:12 +0000)]
predicates.md (rs6000_cbranch_operator): Accept some unordered comparison operators when...
* config/rs6000/predicates.md (rs6000_cbranch_operator): Accept some
unordered comparison operators when -fno-trapping-math is in effect
on the e500.
* config/rs6000/rs6000.c (rs6000_generate_compare): Remove dead code
and implement unordered comparison operators properly on the e500.
From-SVN: r199557
Eric Botcazou [Fri, 31 May 2013 19:08:51 +0000 (19:08 +0000)]
simplify-rtx.c (simplify_byte_swapping_operation): Use proper macro for constant scalar integers.
* simplify-rtx.c (simplify_byte_swapping_operation): Use proper macro
for constant scalar integers.
(simplify_relational_operation_1): Likewise.
From-SVN: r199556
Segher Boessenkool [Fri, 31 May 2013 18:15:01 +0000 (20:15 +0200)]
rs6000-opts.h (enum processor_type): Reorder.
2013-05-31 Segher Boessenkool <segher@kernel.crashing.org>
gcc/
* config/rs6000/rs6000-opts.h (enum processor_type): Reorder.
* config/rs6000/rs6000.md (cpu): Reorder. Split long line.
Fix comment.
From-SVN: r199555
Marcus Shawcroft [Fri, 31 May 2013 17:46:10 +0000 (17:46 +0000)]
Fix pr54684.C regression.
From-SVN: r199552
Marcus Shawcroft [Fri, 31 May 2013 17:44:04 +0000 (17:44 +0000)]
Fix pr56184.C regression.
From-SVN: r199551
Marcus Shawcroft [Fri, 31 May 2013 17:42:35 +0000 (17:42 +0000)]
Fix eb76.C regression for arm*-*-*.
From-SVN: r199550
Yuri Rumyantsev [Fri, 31 May 2013 15:52:42 +0000 (08:52 -0700)]
Silvermont (SLM) architecture performance tuning
2013-05-31 Yuri Rumyantsev <yuri.s.rumyantsev@intel.com>
Igor Zamyatin <igor.zamyatin@intel.com>
* config/i386/i386.h (enum ix86_tune_indices): Add
X86_TUNE_SPLIT_MEM_OPND_FOR_FP_CONVERTS.
(TARGET_SPLIT_MEM_OPND_FOR_FP_CONVERTS): New define.
* config/i386/i386.c (initial_ix86_tune_features)
<X86_TUNE_SPLIT_MEM_OPND_FOR_FP_CONVERTS>: Initialize.
(ix86_lea_outperforms): Handle Silvermont tuning.
(ix86_avoid_lea_for_add): Add new argument to ix86_lea_outperforms
call.
(ix86_use_lea_for_mov): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_lea_for_add_ok): Likewise.
(exact_dependency_1): New function.
(exact_store_load_dependency): Likewise.
(ix86_adjust_cost): Handle Silvermont tuning.
(do_reoder_for_imul): Likewise.
(swap_top_of_ready_list): New function.
(ix86_sched_reorder): Changed to handle Silvermont tuning.
* config/i386/i386.md (peepholes that split memory operand in fp
converts): New.
From-SVN: r199546
Marcus Shawcroft [Fri, 31 May 2013 15:45:48 +0000 (15:45 +0000)]
[PATCH, AArch64] Remove excessive braces.
From-SVN: r199545
Marcus Shawcroft [Fri, 31 May 2013 15:40:09 +0000 (15:40 +0000)]
[AArch64] -mcmodel=tiny -fPIC use tiny absolute for non binds local.
From-SVN: r199544
Jason Merrill [Fri, 31 May 2013 13:39:47 +0000 (09:39 -0400)]
fix nsdmi-union2.C
From-SVN: r199541
Balaji V. Iyer [Fri, 31 May 2013 12:55:02 +0000 (12:55 +0000)]
re PR c/57452 (FAIL: c-c++-common/cilk-plus/AN/if_test.c)
2013-05-31 Balaji V. Iyer <balaji.v.iyer@intel.com>
PR c/57452
* c-c++-common/cilk-plus/AN/if_test.c: Fixed out of bounds issue in
test-case.
From-SVN: r199537
Rainer Orth [Fri, 31 May 2013 11:53:40 +0000 (11:53 +0000)]
Moved gcc.dg/debug/dwarf2/discriminator.c to proper ChangeLog.
From-SVN: r199535
Rainer Orth [Fri, 31 May 2013 11:32:43 +0000 (11:32 +0000)]
Fix gcc.dg/shrink-wrap-alloca.c
* gcc.dg/shrink-wrap-alloca.c: Use __builtin_alloca.
From-SVN: r199533
Marek Polacek [Fri, 31 May 2013 10:58:52 +0000 (10:58 +0000)]
Add testcase for PR57478
From-SVN: r199531
Tobias Burnus [Fri, 31 May 2013 10:18:40 +0000 (12:18 +0200)]
re PR middle-end/57073 (__builtin_powif (-1.0, k) should be optimized to "1.0 - 2.0 * (K%2)")
2013-05-31 Tobias Burnus <burnus@net-b.de>
PR middle-end/57073
* tree-ssa-math-opts.c (execute_cse_sincos): Move check
further up.
From-SVN: r199529
Tobias Burnus [Fri, 31 May 2013 09:41:53 +0000 (11:41 +0200)]
re PR fortran/57456 ([OOP] CLASS + CHARACTER ALLOCATE with typespec: For arrays, the typespec is ignored)
2013-05-31 Tobias Burnus <burnus@net-b.de>
PR fortran/57456
* trans-array.c (gfc_array_init_size): Use passed type spec,
when available.
(gfc_array_allocate): Pass typespec on.
* trans-array.h (gfc_array_allocate): Update prototype.
* trans-stmt.c (gfc_trans_allocate): Pass typespec on.
2013-05-31 Tobias Burnus <burnus@net-b.de>
PR fortran/57456
* gfortran.dg/class_array_17.f90: New.
From-SVN: r199528
Kyrylo Tkachov [Fri, 31 May 2013 09:29:41 +0000 (09:29 +0000)]
re PR target/56315 (ARM: Improve use of 64-bit constants in logical operations)
gcc/
2013-05-31 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/56315
* config/arm/arm.c (const_ok_for_dimode_op): Handle IOR.
* config/arm/arm.md (*iordi3_insn): Change to insn_and_split.
* config/arm/neon.md (iordi3_neon): Remove.
(neon_vorr<mode>): Generate iordi3 instead of iordi3_neon.
* config/arm/predicates.md (imm_for_neon_logic_operand):
Move to earlier in the file.
(neon_logic_op2): Likewise.
(arm_iordi_operand_neon): New predicate.
gcc/testsuite/
2013-05-31 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/56315
* gcc.target/arm/iordi3-opt.c: New test.
From-SVN: r199527
Richard Biener [Fri, 31 May 2013 08:56:28 +0000 (08:56 +0000)]
re PR tree-optimization/57478 (ice in vec.h:815)
2013-05-31 Richard Biener <rguenther@suse.de>
PR tree-optimization/57478
PR tree-optimization/57453
* tree-vect-slp.c (vect_bb_slp_scalar_cost): Uses in PHI nodes
are life as well.
From-SVN: r199476
Janus Weil [Fri, 31 May 2013 08:09:09 +0000 (10:09 +0200)]
re PR fortran/54190 (TYPE(*)/assumed-rank: Type/rank check too relaxed for dummy procedure)
2013-05-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/54190
PR fortran/57217
* gfortran.h (gfc_terminal_width): Remove prototype.
* error.c (get_terminal_width): Moved here from misc.c. Renamed.
Try to determine terminal width from environment variable.
* interface.c (compare_type, compare_rank): New functions. Fix assumed
type/rank handling.
(compare_type_rank, check_dummy_characteristics,
check_result_characteristics, gfc_compare_interfaces): Use them.
(symbol_rank): Slightly modified and moved.
* misc.c (gfc_terminal_width): Moved to error.c.
2013-05-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/54190
PR fortran/57217
* gfortran.dg/dummy_procedure_5.f90: Modified error message.
* gfortran.dg/interface_26.f90: Ditto.
* gfortran.dg/proc_ptr_11.f90: Ditto.
* gfortran.dg/proc_ptr_15.f90: Ditto.
* gfortran.dg/proc_ptr_comp_20.f90: Ditto.
* gfortran.dg/proc_ptr_comp_33.f90: Ditto.
* gfortran.dg/proc_ptr_result_5.f90: Ditto.
* gfortran.dg/typebound_override_1.f90: Ditto.
* gfortran.dg/typebound_override_4.f90: Ditto.
* gfortran.dg/typebound_proc_6.f03: Ditto.
* gfortran.dg/assumed_type_7.f90: New test.
* gfortran.dg/typebound_override_5.f90: New test.
* gfortran.dg/typebound_override_6.f90: New test.
* gfortran.dg/typebound_override_7.f90: New test.
From-SVN: r199475
Kaushik Phatak [Fri, 31 May 2013 04:23:02 +0000 (04:23 +0000)]
rl78.md (mulqi3,mulhi3): New define_expands.
* config/rl78/rl78.md (mulqi3,mulhi3): New define_expands.
(mulqi3_rl78,mulhi3_rl78,mulhi3_g13): New define_insns.
From-SVN: r199469
GCC Administrator [Fri, 31 May 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199464
Tobias Burnus [Thu, 30 May 2013 21:32:53 +0000 (23:32 +0200)]
re PR middle-end/57073 (__builtin_powif (-1.0, k) should be optimized to "1.0 - 2.0 * (K%2)")
2013-05-30 Tobias Burnus <burnus@net-b.de>
Thomas Koenig <tkoenig@gcc.gnu.org>
PR middle-end/57073
* tree-ssa-math-opts.c (execute_cse_sincos): Optimize
powi (-1.0, k) to (k & 1) ? -1.0 : 1.0.
2013-05-30 Tobias Burnus <burnus@net-b.de>
PR middle-end/57073
* gfortran.dg/power_6.f90: New.
From-SVN: r199461
Steven Bosscher [Thu, 30 May 2013 21:06:02 +0000 (21:06 +0000)]
rtlanal.c (tablejump_p): Expect table and label to be adjacent.
* rtlanal.c (tablejump_p): Expect table and label to be adjacent.
From-SVN: r199460
Vladimir Makarov [Thu, 30 May 2013 20:30:38 +0000 (20:30 +0000)]
target.def (register_usage_leveling_p): New hook.
2013-05-30 Vladimir Makarov <vmakarov@redhat.com>
* target.def (register_usage_leveling_p): New hook.
* targhooks.c (default_register_usage_leveling_p): New.
* targhooks.h (default_register_usage_leveling_p): New prototype.
* lra-assigns.c (register_usage_leveling_p): Use the hook.
* doc/tm.texi.in (TARGET_REGISTER_USAGE_LEVELING_P): New hook.
* doc/tm.texi: Update.
* config/i386/i386.c (TARGET_REGISTER_USAGE_LEVELING_P): Define.
From-SVN: r199459
Jason Merrill [Thu, 30 May 2013 19:20:19 +0000 (15:20 -0400)]
re PR c++/57404 ([C++11] ICE: SIGSEGV in cp_classify_record with -g)
PR c++/57404
* cp-lang.c (cp_classify_record): Handle structs without
TYPE_LANG_SPECIFIC.
From-SVN: r199456
Jason Merrill [Thu, 30 May 2013 19:20:08 +0000 (15:20 -0400)]
re PR c++/52377 (C++11 non-static initializers in unions are not used)
PR c++/52377
* class.c (common_enclosing_class): New.
* cp-tree.h: Declare it.
* init.c (sort_mem_initializers): Don't splice out a union member
with an NSDMI.
From-SVN: r199455
Ian Bolton [Thu, 30 May 2013 16:23:44 +0000 (16:23 +0000)]
AArch64 - Support BFI instruction and insv pattern
From-SVN: r199454
Yufeng Zhang [Thu, 30 May 2013 14:44:10 +0000 (14:44 +0000)]
alias-decl-debug-0.C: Add aarch64*-*-* to the dg-skip-if "No stabs".
gcc/testsuite/
* g++.dg/cpp0x/alias-decl-debug-0.C: Add aarch64*-*-* to the
dg-skip-if "No stabs".
From-SVN: r199452
Joern Rennecke [Thu, 30 May 2013 11:07:05 +0000 (11:07 +0000)]
re PR rtl-optimization/57439 (FAIL: gcc.c-torture/execute/920501-6.c execution, -O1)
PR rtl-optimization/57439
* postreload.c (move2add_valid_value_p): Check that we have
a zero subreg_regno_offset when accessing the register in
the requested mode.
From-SVN: r199449
Janus Weil [Thu, 30 May 2013 10:19:16 +0000 (12:19 +0200)]
re PR fortran/54189 (ICE (segfault) with invalid assumed-size dummy)
2013-05-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/54189
* resolve.c (check_assumed_size_reference): Check for e->ref.
2013-05-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/54189
* gfortran.dg/assumed_size_1.f90: New.
From-SVN: r199445
Yuri Rumyantsev [Thu, 30 May 2013 10:10:21 +0000 (10:10 +0000)]
Silvermont (SLM) architecture pipeline model, tuning and insn selection.
Silvermont (SLM) architecture pipeline model, tuning and
insn selection.
* config.gcc: Add slm config options and target.
* config/i386/slm.md: New.
* config/i386/driver-i386.c (host_detect_local_cpu): Check movbe.
* gcc/config/i386/i386-c.c (ix86_target_macros_internal): New case
PROCESSOR_SLM.
(ix86_target_macros_internal): Likewise.
* gcc/config/i386/i386.c (slm_cost): New cost.
(m_SLM): New macro flag.
(initial_ix86_tune_features): Set m_SLM.
(x86_accumulate_outgoing_args): Likewise.
(x86_arch_always_fancy_math_387): Likewise.
(processor_target_table): Add slm cost.
(cpu_names): Add slm cpu name.
(x86_option_override_internal): Set SLM ISA.
(ix86_issue_rate): New case PROCESSOR_SLM.
(ia32_multipass_dfa_lookahead): Likewise.
(fold_builtin_cpu): Add slm.
* config/i386/i386.h (TARGET_SLM): New target macro.
(target_cpu_default): Add TARGET_CPU_DEFAULT_slm.
(processor_type): Add PROCESSOR_SLM.
* config/i386/i386.md (cpu): Add new value "slm".
(slm.md): Include slm.md.
* libgcc/config/i386/cpuinfo.c (INTEL_SLM): New enum value.
Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com>
From-SVN: r199444
Xuepeng Guo [Thu, 30 May 2013 08:11:30 +0000 (08:11 +0000)]
arm-protos.h: Add and update function protos.
gcc/ChangeLog:
2013-05-30 Bernd Schmidt <bernds@codesourcery.com>
Zhenqiang Chen <zhenqiang.chen@linaro.org>
* config/arm/arm-protos.h: Add and update function protos.
* config/arm/arm.c (use_simple_return_p): New added.
(thumb2_expand_return): Check simple_return flag.
* config/arm/arm.md: Add simple_return and conditional simple_return.
* config/arm/iterators.md: Add iterator for return and simple_return.
gcc/testsuite/ChangeLog:
2013-05-30 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* gcc.dg/shrink-wrap-alloca.c: New added.
* gcc.dg/shrink-wrap-pretend.c: New added.
* gcc.dg/shrink-wrap-sibcall.c: New added.
From-SVN: r199439
Zhenqiang Chen [Thu, 30 May 2013 07:30:45 +0000 (07:30 +0000)]
arm.c (arm_add_cfa_adjust_cfa_note): New added.
2013-05-30 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* config/arm/arm.c (arm_add_cfa_adjust_cfa_note): New added.
(arm_emit_multi_reg_pop): Add REG_CFA_ADJUST_CFA notes.
(arm_emit_vfp_multi_reg_pop): Likewise.
(thumb2_emit_ldrd_pop): Likewise.
(arm_expand_epilogue): Add misc REG_CFA notes.
(arm_unwind_emit): Skip REG_CFA_ADJUST_CFA and REG_CFA_RESTORE.
From-SVN: r199438
Tobias Burnus [Thu, 30 May 2013 07:29:49 +0000 (09:29 +0200)]
re PR fortran/57458 (TS29113: Wrongly rejects noncontiguous argument to assumed-rank when both are volatile/asynchronous)
2013-05-30 Tobias Burnus <burnus@net-b.de>
PR fortran/57458
* interface.c (compare_parameter): Update C1239/C1240 constraint
check for assumed-rank/TS29113.
2013-05-30 Tobias Burnus <burnus@net-b.de>
PR fortran/57458
* gfortran.dg/assumed_rank_13.f90: New.
From-SVN: r199437
Eric Botcazou [Thu, 30 May 2013 07:15:37 +0000 (07:15 +0000)]
* gcc-interface/Makefile.in (arm% androideabi): Robustify.
From-SVN: r199436
Lawrence Crowl [Thu, 30 May 2013 01:26:05 +0000 (01:26 +0000)]
This patch is a consolodation of the hash_table patches to the
cxx-conversion branch for files under gcc/config.
Update various hash tables from htab_t to hash_table.
Modify types and calls to match.
* config/arm/arm.c'arm_libcall_uses_aapcs_base::libcall_htab
Fold libcall_eq and libcall_hash into new struct libcall_hasher.
* config/ia64/ia64.c'bundle_state_table
Fold bundle_state_hash and bundle_state_eq_p into new struct
bundle_state_hasher.
* config/mips/mips.c'mips_offset_table
Fold mips_lo_sum_offset_hash and mips_lo_sum_offset_eq into new
struct mips_lo_sum_offset_hasher.
In mips_reorg_process_insns, change call to for_each_rtx to pass
a pointer to the hash_table rather than a htab_t. This change
requires then dereferencing that pointer in mips_record_lo_sum to
obtain the hash_table.
* config/sol2.c'solaris_comdat_htab
Fold comdat_hash and comdat_eq into new struct comdat_entry_hasher.
* config/i386/winnt.c'i386_pe_section_type_flags::htab
* config/i386/winnt.c'i386_find_on_wrapper_list::wrappers
Fold wrapper_strcmp into new struct wrapped_symbol_hasher.
Tested on x86_64. Tested with config-list.mk.
Index: gcc/ChangeLog
2013-05-29 Lawrence Crowl <crowl@google.com>
* config/arm/t-arm: Update for below.
* config/arm/arm.c (arm_libcall_uses_aapcs_base::libcall_htab):
Change type to hash_table. Update dependent calls and types.
* config/i386/t-cygming: Update for below.
* config/i386/t-interix: Update for below.
* config/i386/winnt.c (i386_pe_section_type_flags::htab):
Change type to hash_table. Update dependent calls and types.
(i386_find_on_wrapper_list::wrappers): Likewise.
* config/ia64/t-ia64: Update for below.
* config/ia64/ia64.c (bundle_state_table):
Change type to hash_table. Update dependent calls and types.
* config/mips/mips.c (mips_reorg_process_insns::htab):
Change type to hash_table. Update dependent calls and types.
* config/sol2.c (solaris_comdat_htab):
Change type to hash_table. Update dependent calls and types.
* config/t-sol2: Update for above.
From-SVN: r199435
GCC Administrator [Thu, 30 May 2013 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199433
Teresa Johnson [Wed, 29 May 2013 20:51:24 +0000 (20:51 +0000)]
This patch re-enables -fdump-passes.
This patch re-enables -fdump-passes. It had stopped working because
dump_passes was changed to use the FOR_EACH_DEFINED_FUNCTION iterator,
however, functions are not marked as defined until after dump_passes
is called, in cgraph_analyze_functions. Fixed by iterating over all
functions.
2013-05-29 Teresa Johnson <tejohnson@google.com>
* passes.c (dump_passes): Use FOR_EACH_FUNCTION since
functions are not yet marked as defined.
From-SVN: r199424
Michael Meissner [Wed, 29 May 2013 20:48:29 +0000 (20:48 +0000)]
vector.md (VEC_I): Add support for new power8 V2DI instructions.
2013-05-29 Michael Meissner <meissner@linux.vnet.ibm.com>
Pat Haugen <pthaugen@us.ibm.com>
Peter Bergner <bergner@vnet.ibm.com>
* config/rs6000/vector.md (VEC_I): Add support for new power8 V2DI
instructions.
(VEC_A): Likewise.
(VEC_C): Likewise.
(vrotl<mode>3): Likewise.
(vashl<mode>3): Likewise.
(vlshr<mode>3): Likewise.
(vashr<mode>3): Likewise.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
support for power8 V2DI builtins.
* config/rs6000/rs6000-builtin.def (abs_v2di): Add support for
power8 V2DI builtins.
(vupkhsw): Likewise.
(vupklsw): Likewise.
(vaddudm): Likewise.
(vminsd): Likewise.
(vmaxsd): Likewise.
(vminud): Likewise.
(vmaxud): Likewise.
(vpkudum): Likewise.
(vpksdss): Likewise.
(vpkudus): Likewise.
(vpksdus): Likewise.
(vrld): Likewise.
(vsld): Likewise.
(vsrd): Likewise.
(vsrad): Likewise.
(vsubudm): Likewise.
(vcmpequd): Likewise.
(vcmpgtsd): Likewise.
(vcmpgtud): Likewise.
(vcmpequd_p): Likewise.
(vcmpgtsd_p): Likewise.
(vcmpgtud_p): Likewise.
(vupkhsw): Likewise.
(vupklsw): Likewise.
(vaddudm): Likewise.
(vmaxsd): Likewise.
(vmaxud): Likewise.
(vminsd): Likewise.
(vminud): Likewise.
(vpksdss): Likewise.
(vpksdus): Likewise.
(vpkudum): Likewise.
(vpkudus): Likewise.
(vrld): Likewise.
(vsld): Likewise.
(vsrad): Likewise.
(vsrd): Likewise.
(vsubudm): Likewise.
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add
support for power8 V2DI instructions.
* config/rs6000/altivec.md (UNSPEC_VPKUHUM): Add support for
power8 V2DI instructions. Combine pack and unpack insns to use an
iterator for each mode. Check whether a particular mode supports
Altivec instructions instead of just checking TARGET_ALTIVEC.
(UNSPEC_VPKUWUM): Likewise.
(UNSPEC_VPKSHSS): Likewise.
(UNSPEC_VPKSWSS): Likewise.
(UNSPEC_VPKUHUS): Likewise.
(UNSPEC_VPKSHUS): Likewise.
(UNSPEC_VPKUWUS): Likewise.
(UNSPEC_VPKSWUS): Likewise.
(UNSPEC_VPACK_SIGN_SIGN_SAT): Likewise.
(UNSPEC_VPACK_SIGN_UNS_SAT): Likewise.
(UNSPEC_VPACK_UNS_UNS_SAT): Likewise.
(UNSPEC_VPACK_UNS_UNS_MOD): Likewise.
(UNSPEC_VUPKHSB): Likewise.
(UNSPEC_VUNPACK_HI_SIGN): Likewise.
(UNSPEC_VUNPACK_LO_SIGN): Likewise.
(UNSPEC_VUPKHSH): Likewise.
(UNSPEC_VUPKLSB): Likewise.
(UNSPEC_VUPKLSH): Likewise.
(VI2): Likewise.
(VI_char): Likewise.
(VI_scalar): Likewise.
(VI_unit): Likewise.
(VP): Likewise.
(VP_small): Likewise.
(VP_small_lc): Likewise.
(VU_char): Likewise.
(add<mode>3): Likewise.
(altivec_vaddcuw): Likewise.
(altivec_vaddu<VI_char>s): Likewise.
(altivec_vadds<VI_char>s): Likewise.
(sub<mode>3): Likewise.
(altivec_vsubcuw): Likewise.
(altivec_vsubu<VI_char>s): Likewise.
(altivec_vsubs<VI_char>s): Likewise.
(altivec_vavgs<VI_char>): Likewise.
(altivec_vcmpbfp): Likewise.
(altivec_eq<mode>): Likewise.
(altivec_gt<mode>): Likewise.
(altivec_gtu<mode>): Likewise.
(umax<mode>3): Likewise.
(smax<mode>3): Likewise.
(umin<mode>3): Likewise.
(smin<mode>3): Likewise.
(altivec_vpkuhum): Likewise.
(altivec_vpkuwum): Likewise.
(altivec_vpkshss): Likewise.
(altivec_vpkswss): Likewise.
(altivec_vpkuhus): Likewise.
(altivec_vpkshus): Likewise.
(altivec_vpkuwus): Likewise.
(altivec_vpkswus): Likewise.
(altivec_vpks<VI_char>ss): Likewise.
(altivec_vpks<VI_char>us): Likewise.
(altivec_vpku<VI_char>us): Likewise.
(altivec_vpku<VI_char>um): Likewise.
(altivec_vrl<VI_char>): Likewise.
(altivec_vsl<VI_char>): Likewise.
(altivec_vsr<VI_char>): Likewise.
(altivec_vsra<VI_char>): Likewise.
(altivec_vsldoi_<mode>): Likewise.
(altivec_vupkhsb): Likewise.
(altivec_vupkhs<VU_char>): Likewise.
(altivec_vupkls<VU_char>): Likewise.
(altivec_vupkhsh): Likewise.
(altivec_vupklsb): Likewise.
(altivec_vupklsh): Likewise.
(altivec_vcmpequ<VI_char>_p): Likewise.
(altivec_vcmpgts<VI_char>_p): Likewise.
(altivec_vcmpgtu<VI_char>_p): Likewise.
(abs<mode>2): Likewise.
(vec_unpacks_hi_v16qi): Likewise.
(vec_unpacks_hi_v8hi): Likewise.
(vec_unpacks_lo_v16qi): Likewise.
(vec_unpacks_hi_<VP_small_lc>): Likewise.
(vec_unpacks_lo_v8hi): Likewise.
(vec_unpacks_lo_<VP_small_lc>): Likewise.
(vec_pack_trunc_v8h): Likewise.
(vec_pack_trunc_v4si): Likewise.
(vec_pack_trunc_<mode>): Likewise.
* config/rs6000/altivec.h (vec_vaddudm): Add defines for power8
V2DI builtins.
(vec_vmaxsd): Likewise.
(vec_vmaxud): Likewise.
(vec_vminsd): Likewise.
(vec_vminud): Likewise.
(vec_vpksdss): Likewise.
(vec_vpksdus): Likewise.
(vec_vpkudum): Likewise.
(vec_vpkudus): Likewise.
(vec_vrld): Likewise.
(vec_vsld): Likewise.
(vec_vsrad): Likewise.
(vec_vsrd): Likewise.
(vec_vsubudm): Likewise.
(vec_vupkhsw): Likewise.
(vec_vupklsw): Likewise.
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r199423
Jan Hubicka [Wed, 29 May 2013 20:42:50 +0000 (22:42 +0200)]
cgraph.h (symtab_node_base): Add definition, alias and analyzed flags...
* cgraph.h (symtab_node_base): Add definition, alias and analyzed
flags; reorder rest of fields in more consistent way.
(varpool_node): Remove analyzed, finalized and alias.
(cgraph_ndoe): Likewise.
(symtab_alias_ultimate_target): New function.
(cgraph_function_node): Move offline.
(cgraph_reset_node): Declare.
(cgraph_comdat_can_be_unshared_p): Remove.
(varpool_remove_initializer): Declare.
(varpool_first_defined_variable, varpool_next_defined_variable
cgraph_first_defined_function, cgraph_next_defined_function): Update.
(cgraph_function_with_gimple_body_p): Update.
(varpool_all_refs_explicit_p): Update.
(symtab_alias_target): New function.
(cgraph_alias_aliased_node, varpool_alias_aliased_node): Rename to ...
(cgraph_alias_target, varpool_alias_target): .. this one; simplify.
(cgraph_function_or_thunk_node): Simplify using symtab_alias_ultimate_target.
(varpool_variable_node): Likewise.
* cgraph.c (cgraph_create_function_alias): Update.
(cgraph_add_thunk): Update.
(cgraph_remove_node): Update.
(dump_cgraph_node): Do not dump removed flags.
(cgraph_function_body_availability): Update.
(cgraph_propagate_frequency): Update.
(verify_cgraph_node): Check sanity of local flag.
(cgraph_function_node): Move here from cgraph.h; revamp for
cgraph_function_or_thunk_node.
* lto-symtab.c (lto_varpool_replace_node): Update.
(lto_symtab_resolve_can_prevail_p): Update.
(lto_symtab_merge_cgraph_nodes): Update.
* ipa-cp.c (determine_versionability, initialize_node_lattices,
propagate_constants_accross_call, devirtualization_time_bonus,
ipcp_propagate_stage): Update.
* tree-emutls.c (create_emultls_var, ipa_lower_emutls): Update.
* ipa-inline-transform.c (clone_inlined_nodes, preserve_function_body_p): Update.
* ipa-reference.c (propagate): Update.
(write_node_summary_p): Update.
* toplev.c (wrapup_global_declaration_2): Update.
* cgraphunit.c (cgraph_analyze_function): Rename to ...
(analyze_function) ... this one.
(cgraph_process_new_functions): Update.
(cgraph_reset_node): Export.
(cgraph_finalize_function): Update.
(cgraph_add_new_function): Update.
(process_function_and_variable_attributes): Update.
(varpool_finalize_decl): Update.
(symbol_finalized): Remove.
(symbol_finalized_and_needed): Rename to ...
(symbol_defined_and_needed): ... update.
(cgraph_analyze_functions): Update.
(handle_alias_pairs): Update.
(mark_functions_to_output): Update.
(assemble_thunk): Update.
(output_in_order): Update.
(output_weakrefs): Update.
(finalize_compilation_unit): Update.
* lto-cgraph.c (reachable_from_other_partition_p, lto_output_node,
lto_output_varpool_node, compute_ltrans_boundary, input_overwrite_node,
input_node, input_varpool_node): Update.
* dbxout.c (dbxout_expand_expr): Update.
* cgraphclones.c (cgraph_clone_node): Update.
(cgraph_copy_node_for_versioning): Update.
(cgraph_materialize_clone): Update.
(cgraph_materialize_all_clones): Update.
* ipa-pure-const.c (analyze_function, pure_const_write_summary,
propagate_pure_const, propagate_nothrow): Update.
* lto-streamer-out.c (lto_output, write_symbol): Update.
* ipa-utils.c (ipa_reverse_postorder): Update.
* ipa-inline.c (can_inline_edge_p): Update.
(update_caller_keys, ipa_inline): Update.
* dwarf2out.c (reference_to_unused,
premark_types_used_by_global_vars_helper): Update.
* tree-eh.c (tree_could_trap_p): Update.
* ipa-split.c (consider_split, execute_split_functions): Update.
* ipa.c (cgraph_non_local_node_p_1, cgraph_local_node_p,
has_addr_references_p): Update;
move ahead in file for better readability.
(process_references): Simplify.
(symtab_remove_unreachable_nodes): Update; cleanup way function/var
bodies are removed.
(cgraph_comdat_can_be_unshared_p): Make static.
(cgraph_externally_visible_p): Update.
(varpool_externally_visible_p): Update.
(function_and_variable_visibility): Update.
* trans-mem.c (get_cg_data, ipa_tm_mayenterirr_function,
ipa_tm_mark_force_output_node): Update.
* ipa-inline-analysis.c (dump_inline_summary, initialize_inline_failed,
estimate_edge_devirt_benefit, inline_generate_summary,
inline_write_summary): Update.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Update.
* ipa-prop.c (ipa_compute_jump_functions): Update.
(ipa_print_node_params, ipa_prop_read_section, ipa_update_after_lto_read,
read_replacements_section): Update.
* varasm.c (mark_decl_referenced): Update.
(assemble_alias, dump_tm_clone_pairs): Update.
* tree-inline.c (copy_bb): Update.
(estimate_num_insns, optimize_inline_calls, tree_function_versioning):
Update.
* symtab.c (dump_symtab_base): Print new flags.
(verify_symtab_base): Verify new flags.
(symtab_alias_ultimate_target): New function.
* tree-ssa-structalias.c (get_constraint_for_ssa_var,
create_variable_info_for, associate_varinfo_to_alias, ipa_pta_execute):
Update.
* passes.c (ipa_write_summaries, ipa_write_optimization_summaries): Update.
* i386.c (ix86_get_function_versions_dispatcher,
ix86_generate_version_dispatcher_body): Update.
(fold_builtin_cpu): Use varpool_add_new_variable.
* varpool.c (varpool_remove_initializer): Break out from ...
(varpool_remove_node): ... this one.
(dump_varpool_node, varpool_node_for_asm,
cgraph_variable_initializer_availability, varpool_analyze_node,
varpool_assemble_decl, varpool_remove_unreferenced_decls,
varpool_finalize_named_section_flags, varpool_create_variable_alias): Update
* decl.c (java_mark_decl_local): Update for new symtab flags.
* tree.c (cp_fix_function_decl_p): Update for new symtab flags.
* decl2.c )var_finalized_p, cp_write_global_declarations): Likewise.
* lto.c (has_analyzed_clone_p, lto_materialize_function): Update for new symtab
flags.
* lto-partition.c (get_symbol_class, lto_balanced_map): Likewise.
From-SVN: r199422
Jan Hubicka [Wed, 29 May 2013 17:59:19 +0000 (19:59 +0200)]
* passes.c (init_optimization_passes): Move OMP expansion into lowering.
From-SVN: r199419
Easwaran Raman [Wed, 29 May 2013 17:30:43 +0000 (17:30 +0000)]
re PR tree-optimization/57442 (ICE in appears_later_in_bb, at tree-ssa-reassoc.c:2891)
2013-05-29 Easwaran Raman <eraman@google.com>
PR tree-optimization/57442
* tree-ssa-reassoc.c (appears_later_in_bb): Return correct value
when control exits the main loop.
2013-05-29 Easwaran Raman <eraman@google.com>
PR tree-optimization/57442
* gcc.dg/tree-ssa/reassoc-30.c: New testcase.
From-SVN: r199418
Sandeep Kumar Singh [Wed, 29 May 2013 16:29:15 +0000 (16:29 +0000)]
rx.h (TARGET_CPU_CPP_BUILTINS): Add macros for RX100, RX200, and RX600.
* rx/rx.h (TARGET_CPU_CPP_BUILTINS): Add macros for RX100, RX200,
and RX600.
* rx/rx.opt: Add macro for rx100 with string rx100 and value
RX100.
* rx/rx-opts.h (rx_cpu_types): Add new cpu type rx100.
* rx/t-rx: Add rx100 under multi library matches option for nofpu
option.
From-SVN: r199417
Bill Schmidt [Wed, 29 May 2013 16:00:54 +0000 (16:00 +0000)]
re PR tree-optimization/57441 (ICE in gimple-ssa-strength-reduction.c:3447 at -O3)
2013-05-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/57441
* gimple-ssa-strength-reduction.c (analyze_candidates_and_replace):
Don't limit size of incr_vec to number of candidates.
2013-05-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/57441
* gcc.c-torture/compile/pr57441.c: New.
From-SVN: r199414
Dehao Chen [Wed, 29 May 2013 15:47:28 +0000 (15:47 +0000)]
re PR testsuite/57413 (FAIL: gcc.dg/debug/dwarf2/discriminator.c scan-assembler on x86_64-apple-darwin10, Solaris/x86)
2013-05-29 Dehao Chen <dehao@google.com>
PR testsuite/57413
* gcc.dg/debug/dwarf2/discriminator.c: Restrict the test to linux-gnu.
From-SVN: r199412
Steve Ellcey [Wed, 29 May 2013 15:16:30 +0000 (15:16 +0000)]
mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips and mips16 directories.
2013-05-29 Steve Ellcey <sellcey@imgtec.com>
* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips
and mips16 directories.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Add micromips and
mips16.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.
* config/mips/t-mti-elf (MULTILIB_OPTIONS): Add micromips.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.
From-SVN: r199411
Rainer Orth [Wed, 29 May 2013 15:00:29 +0000 (15:00 +0000)]
Fix c/c-array-notation.c compilation failure (PR bootstrap/57450)
PR bootstrap/57450
* c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
(build_array_notation_expr): Likewise.
From-SVN: r199410
Tobias Burnus [Wed, 29 May 2013 13:15:16 +0000 (15:15 +0200)]
re PR fortran/37336 ([F03] Finish derived-type finalization)
2013-05-28 Tobias Burnus <burnus@net-b.de>
PR fortran/37336
* class.c (finalize_component): Fix coarray array refs.
(generate_finalization_wrapper): Only gfc_convert_type_warn
when the kind value is different.
(gfc_find_intrinsic_vtab): _copy's dst is now intent(inout).
(gfc_find_derived_vtab): Ditto. Enable finalization-wrapper
generation.
* module.c (MOD_VERSION): Bump.
(gfc_dump_module, gfc_use_module): Remove empty line in .mod.
* trans-array.c (gfc_conv_descriptor_token): Accept
* nonrestricted
void pointer.
(gfc_array_allocate, structure_alloc_comps): Don't nullify for
BT_CLASS allocations.
* trans-stmt.c (gfc_trans_allocate): Ditto.
2013-05-28 Tobias Burnus <burnus@net-b.de>
PR fortran/37336
* gfortran.dg/auto_dealloc_2.f90: Update _free count in the
* dump.
* gfortran.dg/class_19.f03: Ditto.
From-SVN: r199409
Chris Schlumberger-Socha [Wed, 29 May 2013 13:08:16 +0000 (13:08 +0000)]
[AArch64] Implement support for --mcmodel=tiny
This patch adds support for the tiny absolute memory model.
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
From-SVN: r199408
Chris Schlumberger-Socha [Wed, 29 May 2013 12:57:33 +0000 (12:57 +0000)]
[AArch64] Re-organize aarch64_classify_symbol.
This patch re-orgnaizes the implementation of aarch64_classify_symbol
in preparation for tiny absolute memory model support.
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
From-SVN: r199407
Ganesh Gopalasubramanian [Wed, 29 May 2013 11:09:55 +0000 (11:09 +0000)]
Enable FP Reassociation for AMD bdver1 and bdver2 architecture
From-SVN: r199406