Yufeng Zhang [Tue, 23 Jul 2013 12:20:05 +0000 (12:20 +0000)]
[AArch64, ILP32] 2/6 More backend changes and support for small absolute and
small PIC addressing models
gcc/
* config/aarch64/aarch64.c (POINTER_BYTES): New define.
(aarch64_load_symref_appropriately): In the case of
SYMBOL_SMALL_ABSOLUTE, use the mode of 'dest' instead of Pmode
to generate new rtx; likewise to the case of SYMBOL_SMALL_GOT.
(aarch64_expand_mov_immediate): In the case of SYMBOL_FORCE_TO_MEM,
change to pass 'ptr_mode' to force_const_mem and zero-extend 'mem'
if 'mode' doesn't equal to 'ptr_mode'.
(aarch64_output_mi_thunk): Add an assertion on the alignment of
'vcall_offset'; change to call aarch64_emit_move differently depending
on whether 'Pmode' equals to 'ptr_mode' or not; use 'POINTER_BYTES'
to calculate the upper bound of 'vcall_offset'.
(aarch64_cannot_force_const_mem): Change to also return true if
mode != ptr_mode.
(aarch64_legitimize_reload_address): In the case of large
displacements, add new local variable 'xmode' and an assertion
based on it; change to use 'xmode' to generate the new rtx and
reload.
(aarch64_asm_trampoline_template): Change to generate the template
differently depending on TARGET_ILP32 or not; change to use
'POINTER_BYTES' in the argument passed to assemble_aligned_integer.
(aarch64_trampoline_size): Removed.
(aarch64_trampoline_init): Add new local constant 'tramp_code_sz'
and replace immediate literals with it. Change to use 'ptr_mode'
instead of 'DImode' and call convert_memory_address if the mode
of 'fnaddr' doesn't equal to 'ptr_mode'.
(aarch64_elf_asm_constructor): Change to use assemble_aligned_integer
to output symbol.
(aarch64_elf_asm_destructor): Likewise.
* config/aarch64/aarch64.h (TRAMPOLINE_SIZE): Change to be dependent
on TARGET_ILP32 instead of aarch64_trampoline_size.
* config/aarch64/aarch64.md (movsi_aarch64): Add new alternatives
of 'mov' between WSP and W registers as well as 'adr' and 'adrp'.
(loadwb_pair<GPI:mode>_<PTR:mode>): Rename to ...
(loadwb_pair<GPI:mode>_<P:mode>): ... this. Replace PTR with P.
(storewb_pair<GPI:mode>_<PTR:mode>): Likewise; rename to ...
(storewb_pair<GPI:mode>_<P:mode>): ... this.
(add_losym): Change to 'define_expand' and call gen_add_losym_<mode>
depending on the value of 'mode'.
(add_losym_<mode>): New.
(ldr_got_small_<mode>): New, based on ldr_got_small.
(ldr_got_small): Remove.
(ldr_got_small_sidi): New.
* config/aarch64/iterators.md (P): New.
(PTR): Change to 'ptr_mode' in the condition.
From-SVN: r201165
Yufeng Zhang [Tue, 23 Jul 2013 12:12:53 +0000 (12:12 +0000)]
[AArch64, ILP32] 1/6 Initial support - configury changes
gcc/
* config.gcc (aarch64*-*-*): Support --with-abi.
(aarch64*-*-elf): Support --with-multilib-list.
(aarch64*-*-linux*): Likewise.
(supported_defaults): Add abi to aarch64*-*-*.
* configure.ac: Mention AArch64 for --with-multilib-list.
* configure: Re-generated.
* config/aarch64/biarchilp32.h: New file.
* config/aarch64/biarchlp64.h: New file.
* config/aarch64/aarch64-elf.h (ENDIAN_SPEC): New define.
(ABI_SPEC): Ditto.
(MULTILIB_DEFAULTS): Ditto.
(DRIVER_SELF_SPECS): Ditto.
(ASM_SPEC): Update to also substitute -mabi.
* config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Add linker script
file whose name depends on -mabi= and -mbig-endian.
* config/aarch64/aarch64.h (LONG_TYPE_SIZE): Change to depend on
TARGET_ILP32.
(POINTER_SIZE): New define.
(POINTERS_EXTEND_UNSIGNED): Ditto.
(enum aarch64_abi_type): New enumeration tag.
(AARCH64_ABI_LP64, AARCH64_ABI_ILP32): New enumerators.
(AARCH64_ABI_DEFAULT): Define to AARCH64_ABI_LP64 if undefined.
(TARGET_ILP32): New define.
* config/aarch64/aarch64.opt (mabi): New.
(aarch64_abi): New.
(ilp32, lp64): New values for -mabi.
* config/aarch64/t-aarch64 (comma): New define.
(MULTILIB_OPTIONS): Ditto.
(MULTILIB_DIRNAMES): Ditto.
* config/aarch64/t-aarch64-linux (MULTIARCH_DIRNAME): New define.
* doc/invoke.texi: Document -mabi for AArch64.
From-SVN: r201164
Georg-Johann Lay [Tue, 23 Jul 2013 11:45:57 +0000 (11:45 +0000)]
avr.md: Explain asm print modifier 'r' for REG.
* config/avr/avr.md: Explain asm print modifier 'r' for REG.
From-SVN: r201163
Ondřej Bílka [Tue, 23 Jul 2013 11:39:41 +0000 (13:39 +0200)]
decl.c: Fix comment typos.
2013-07-23 Ondřej Bílka <neleai@seznam.cz>
* decl.c: Fix comment typos.
* interface.c: Likewise.
* trans-array.c: Likewise.
* trans.c: Likewise.
From-SVN: r201162
Uros Bizjak [Tue, 23 Jul 2013 09:45:30 +0000 (11:45 +0200)]
fpu-387.h (get_fpu_rounding_mode): Read rounding mode from SSE mxcsr register on x86_64.
* config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
from SSE mxcsr register on x86_64.
From-SVN: r201161
Paolo Carlini [Tue, 23 Jul 2013 09:39:01 +0000 (09:39 +0000)]
random: Add back <cstdio> include.
2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/random: Add back <cstdio> include.
* src/c++11/random.cc: Don't include <cstdio> here.
From-SVN: r201160
Alexander Monakov [Tue, 23 Jul 2013 09:17:10 +0000 (13:17 +0400)]
elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
* elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
From-SVN: r201159
Alexander Monakov [Tue, 23 Jul 2013 09:12:00 +0000 (13:12 +0400)]
elf.c (backtrace_initialize): Pass elf_fileline_fn to dl_iterate_phdr callbacks.
* elf.c (backtrace_initialize): Pass elf_fileline_fn to
dl_iterate_phdr callbacks.
From-SVN: r201158
Andreas Krebbel [Tue, 23 Jul 2013 07:20:52 +0000 (07:20 +0000)]
linux-unwind.h: Use the proper dwarf to hard reg mapping for FPRs when...
2013-07-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/linux-unwind.h: Use the proper dwarf to hard reg
mapping for FPRs when creating the fallback framestate.
From-SVN: r201156
Ian Lance Taylor [Tue, 23 Jul 2013 04:42:09 +0000 (04:42 +0000)]
runtime: Ignore SIGPROF if not on a Go thread.
From-SVN: r201154
Tom Tromey [Tue, 23 Jul 2013 01:54:24 +0000 (01:54 +0000)]
c-common.h (enum rid): New constant.
2013-07-23 Tom Tromey <tromey@redhat.com>
Joseph Myers <joseph@codesourcery.com>
c-family:
* c-common.h (enum rid) <RID_GENERIC>: New constant.
* c-common.c (c_common_reswords): Add _Generic.
c:
* c-parser.c (struct c_generic_association): New.
(c_generic_association_d): New typedef.
(c_parser_generic_selection): New function.
(c_parser_postfix_expression): Handle RID_GENERIC.
testsuite:
* gcc.dg/c11-generic-1.c: New file.
* gcc.dg/c11-generic-2.c: New file.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r201153
GCC Administrator [Tue, 23 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201152
Bill Schmidt [Mon, 22 Jul 2013 23:08:44 +0000 (23:08 +0000)]
rs6000.c (rs6000_expand_vector_init): Fix endianness when selecting field to splat.
2013-07-22 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (rs6000_expand_vector_init): Fix
endianness when selecting field to splat.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201149
Eric Christopher [Mon, 22 Jul 2013 21:54:33 +0000 (21:54 +0000)]
dwarf2out.c (die_odr_checksum): New function to use CHECKSUM_ macros and ULEB128 for DIE tag.
2013-07-22 Eric Christopher <echristo@gmail.com>
* dwarf2out.c (die_odr_checksum): New function to use
CHECKSUM_ macros and ULEB128 for DIE tag.
(generate_type_signature): Use.
From-SVN: r201148
Eric Botcazou [Mon, 22 Jul 2013 21:41:44 +0000 (21:41 +0000)]
config.gcc (sparc*-*-*): Accept leon3 processor.
* config.gcc (sparc*-*-*): Accept leon3 processor.
(sparc-leon*-*): Merge with sparc*-*-* and add leon3 support.
* doc/invoke.texi (SPARC Options): Adjust -mfix-ut699 entry.
* config/sparc/sparc-opts.h (enum processor_type): Add PROCESSOR_LEON3.
* config/sparc/sparc.opt (enum processor_type): Add leon3.
(mfix-ut699): Adjust comment.
* config/sparc/sparc.h (TARGET_CPU_leon3): New define.
(CPP_CPU32_DEFAULT_SPEC): Add leon3 support.
(CPP_CPU_SPEC): Likewise.
(ASM_CPU_SPEC): Likewise.
* config/sparc/sparc.c (leon3_cost): New constant.
(sparc_option_override): Add leon3 support.
(mem_ref): New function.
(sparc_gate_work_around_errata): Return true if -mfix-ut699 is enabled.
(sparc_do_work_around_errata): Look into the instruction in the delay
slot and adjust accordingly. Add fix for the data cache nullify issues
of the UT699. Change insertion position for the NOP.
* config/sparc/leon.md (leon_fpalu, leon_fpmds, write_buf): Delete.
(leon3_load): New reservation.
(leon_store): Bump latency to 2.
(grfpu): New automaton.
(grfpu_alu): New unit.
(grfpu_ds): Likewise.
(leon_fp_alu): Adjust.
(leon_fp_mult): Delete.
(leon_fp_div): Split into leon_fp_divs and leon_fp_divd.
(leon_fp_sqrt): Split into leon_fp_sqrts and leon_fp_sqrtd.
* config/sparc/sparc.md (cpu): Add leon3.
* config/sparc/sync.md (atomic_exchangesi): Disable if -mfix-ut699.
(swapsi): Likewise.
(atomic_test_and_set): Likewise.
(ldstub): Likewise.
From-SVN: r201147
Jason Merrill [Mon, 22 Jul 2013 19:43:27 +0000 (15:43 -0400)]
re PR libstdc++/57914 (Memory leak in __cxa_thread_atexit when using thread_local)
PR libstdc++/57914
* libsupc++/atexit_thread.cc (run): Delete cleanup elts.
From-SVN: r201146
Paolo Carlini [Mon, 22 Jul 2013 19:43:21 +0000 (19:43 +0000)]
cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not tf_warning_or_error.
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not
tf_warning_or_error.
From-SVN: r201145
Mike Stump [Mon, 22 Jul 2013 18:52:01 +0000 (18:52 +0000)]
Fix typo.
From-SVN: r201144
Jürgen Urban [Mon, 22 Jul 2013 18:48:32 +0000 (18:48 +0000)]
config.gcc (mips*-*-*): Add --with-fpu support.
gcc/
2013-07-26 Jürgen Urban <JuergenUrban@gmx.de>
* config.gcc (mips*-*-*): Add --with-fpu support. Make single the
default for R5900 targets.
* config/mips/mips.h (OPTION_DEFAULT_SPECS): Handle --with-fpu.
(ISA_HAS_LDC1_SDC1): Set to false for TARGET_MIPS5900.
* config/mips/mips.c (mips_option_override): Report an error for
-march=r5900 -mhard-float -mdouble-float. Use spu_single_format
for -march=r5900 -mhard-float.
From-SVN: r201143
Tobias Burnus [Mon, 22 Jul 2013 17:59:33 +0000 (19:59 +0200)]
Really add testsuite/gfortran.dg/coarray_31.f90, which should be in commit Rev.
Really add testsuite/gfortran.dg/coarray_31.f90, which should be
in commit Rev. 201140.
From-SVN: r201142
Mike Stump [Mon, 22 Jul 2013 17:46:05 +0000 (17:46 +0000)]
Fix typos.
From-SVN: r201141
Tobias Burnus [Mon, 22 Jul 2013 17:28:56 +0000 (19:28 +0200)]
re PR fortran/57906 (Coarray components: Assignment optimized away (gfortran.dg/coarray/lib_realloc_1.f90))
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* class.c (gfc_build_class_symbol): Set coarray_comp.
* trans-array.c (structure_alloc_comps): For coarrays,
directly use the data pointer address.
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* coarray/lib_realloc_1.f90: Permit optimization.
* gfortran.dg/coarray_31.f90: New.
From-SVN: r201140
Mike Stump [Mon, 22 Jul 2013 17:23:17 +0000 (17:23 +0000)]
Fix typo.
From-SVN: r201139
Mike Stump [Mon, 22 Jul 2013 17:18:54 +0000 (17:18 +0000)]
Fix typo.
From-SVN: r201138
Tobias Burnus [Mon, 22 Jul 2013 17:02:26 +0000 (19:02 +0200)]
re PR fortran/57762 (Memory leak in gfortran.dg/class_array_7.f03 after revision 200084)
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57762
* gfortran.dg/class_array_7.f03: Fix memory leak.
From-SVN: r201137
Paolo Carlini [Mon, 22 Jul 2013 16:18:45 +0000 (16:18 +0000)]
re PR c++/52816 ([C++11] Access to private members inside decltype in the signature of a member template causes access control error)
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52816
* g++.dg/cpp0x/decltype56.C: New.
From-SVN: r201136
Kyrylo Tkachov [Mon, 22 Jul 2013 16:09:32 +0000 (16:09 +0000)]
pr53265.c: Correct line number in dg-message.
gcc/testsuite/
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.dg/pr53265.c: Correct line number in dg-message.
From-SVN: r201135
Uros Bizjak [Mon, 22 Jul 2013 15:43:20 +0000 (17:43 +0200)]
* ChangeLog: Fix whitespace.
From-SVN: r201134
Paolo Carlini [Mon, 22 Jul 2013 15:22:52 +0000 (15:22 +0000)]
re PR libstdc++/57920 ([c++11] Linux: std::random_device reads too much from /dev/urandom)
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57920
* src/c++11/random.cc (random_device::_M_getval): If possible, use
read instead of std::fread.
* include/std/random: Do not include <cstdio> unnecessarily.
From-SVN: r201133
Po-Chun Chang [Mon, 22 Jul 2013 15:20:11 +0000 (09:20 -0600)]
df-problems.c (can_move_insns_across): Exit loop once we find a non-fixed, non-global register.
* df-problems.c (can_move_insns_across): Exit loop once we
find a non-fixed, non-global register.
* ipa-pure-const.c (propagate_nothrow): Exit loop after
setting can_throw.
* omega.c (omega_eliminate_red): Break after setting red_found.
(omega_problem_has_red_equations): Similarly after setting found.
(omega_query_variable): Similarly after setting coupled.
* trans-decl.c (gfc_build_dummy_array_decl): Exit loop after
setting PACKED_PARTIAL.
From-SVN: r201132
Marek Polacek [Mon, 22 Jul 2013 13:48:04 +0000 (13:48 +0000)]
Don't include gimple.h twice.
From-SVN: r201131
Tobias Burnus [Mon, 22 Jul 2013 13:33:34 +0000 (15:33 +0200)]
trans-array.c (gfc_array_allocate): Correct memory-leak patch.
2013-07-22 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_array_allocate): Correct memory-leak patch.
From-SVN: r201129
Diego Novillo [Mon, 22 Jul 2013 13:24:07 +0000 (09:24 -0400)]
This test was failing with -m64 because it was forcing -m32
instead of asking for ilp32.
From-SVN: r201128
Kyrylo Tkachov [Mon, 22 Jul 2013 13:08:24 +0000 (13:08 +0000)]
constraints.md (Pd): Allow TARGET_THUMB instead of TARGET_THUMB1.
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/constraints.md (Pd): Allow TARGET_THUMB
instead of TARGET_THUMB1.
(Pz): New constraint.
* config/arm/arm.md (arm_addsi3): Add alternatives for 16-bit
encodings.
(compare_negsi_si): Likewise.
(compare_addsi2_op0): Likewise.
(compare_addsi2_op1): Likewise.
(addsi3_carryin_<optab>): Likewise.
(addsi3_carryin_alt2_<optab>): Likewise.
(addsi3_carryin_shift_<optab>): Disable cond_exec variant
for arm_restrict_it.
(subsi3_carryin): Likewise.
(arm_subsi3_insn): Add alternatives for 16-bit encoding.
(minmax_arithsi): Disable for arm_restrict_it.
(minmax_arithsi_non_canon): Adjust for arm_restrict_it.
(satsi_<SAT:code>): Disable cond_exec variant for arm_restrict_it.
(satsi_<SAT:code>_shift): Likewise.
(arm_shiftsi3): Add alternative for 16-bit encoding.
(arm32_movhf): Disable for arm_restrict_it.
(arm_cmpdi_unsigned): Add alternatives for 16-bit encoding.
(arm_movtas_ze): Disable cond_exec variant for arm_restrict_it.
From-SVN: r201126
Tobias Burnus [Mon, 22 Jul 2013 13:03:50 +0000 (15:03 +0200)]
trans-array.c (gfc_array_allocate, [...]): Plug memory leak.
2013-07-22 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_array_allocate,
gfc_trans_deferred_array): Plug memory leak.
From-SVN: r201125
Sofiane Naci [Mon, 22 Jul 2013 12:39:18 +0000 (12:39 +0000)]
arm.md (attribute "insn"): Delete.
* config/arm/arm.md (attribute "insn"): Delete.
(attribute "type"): Add "mov_imm", "mov_reg", "mov_shift",
"mov_shift_reg", "mvn_imm", "mvn_reg", "mvn_shift" and "mvn_shift_reg".
(not_shiftsi): Update for attribute change.
(not_shiftsi_compare0): Likewise.
(not_shiftsi_compare0_scratch): Likewise.
(arm_one_cmplsi2): Likewise.
(thumb1_one_cmplsi2): Likewise.
(notsi_compare0): Likewise.
(notsi_compare0_scratch): Likewise.
(thumb1_movdi_insn): Likewise.
(arm_movsi_insn): Likewise.
(movhi_insn_arch4): Likewise.
(movhi_bytes): Likewise.
(arm_movqi_insn): Likewise.
(thumb1_movqi_insn): Likewise.
(arm32_movhf): Likewise.
(thumb1_movhf): Likewise.
(arm_movsf_soft_insn): Likewise.
(thumb1_movsf_insn): Likewise.
(thumb_movdf_insn): Likewise.
(movsicc_insn): Likewise.
(movsfcc_soft_insn): Likewise.
(and_scc): Likewise.
(cond_move): Likewise.
(if_move_not): Likewise.
(if_not_move): Likewise.
(if_shift_move): Likewise.
(if_move_shift): Likewise.
(if_shift_shift): Likewise.
(if_not_arith): Likewise.
(if_arith_not): Likewise.
(cond_move_not): Likewise.
* config/arm/neon.md (neon_mov<mode>): Update for attribute change.
(neon_mov<mode>): Likewise.
* config/arm/vfp.md (arm_movsi_vfp): Update for attribute change.
(thumb2_movsi_vfp): Likewise.
(movsf_vfp): Likewise.
(thumb2_movsf_vfp): Likewise.
* config/arm/arm.c (xscale_sched_adjust_cost): Update for attribute change.
(cortexa7_older_only): Likewise.
(cortexa7_younger): Likewise.
* config/arm/arm1020e.md (1020alu_op): Update for attribute change.
(1020alu_shift_op): Likewise.
(1020alu_shift_reg_op): Likewise.
* config/arm/arm1026ejs.md (alu_op): Update for attribute change.
(alu_shift_op): Likewise.
(alu_shift_reg_op): Likewise.
* config/arm/arm1136jfs.md (11_alu_op): Update for attribute change.
(11_alu_shift_op): Likewise.
(11_alu_shift_reg_op): Likewise.
* config/arm/arm926ejs.md (9_alu_op): Update for attribute change.
(9_alu_shift_reg_op): Likewise.
* config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute change.
(cortex_a15_alu_shift): Likewise.
(cortex_a15_alu_shift_reg): Likewise.
* config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute change.
(cortex_a5_alu_shift): Likewise.
* config/arm/cortex-a53.md (cortex_a53_alu): Update for attribute change.
(cortex_a53_alu_shift): Likewise.
* config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute change.
(cortex_a7_alu_reg): Likewise.
(cortex_a7_alu_shift): Likewise.
* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute change.
(cortex_a8_alu_shift): Likewise.
(cortex_a8_alu_shift_reg): Likewise.
(cortex_a8_mov): Likewise.
* config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute change.
(cortex_a9_dp_shift): Likewise.
* config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute change.
* config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute change.
(cortex_r4_mov): Likewise.
(cortex_r4_alu_shift): Likewise.
(cortex_r4_alu_shift_reg): Likewise.
* config/arm/fa526.md (526_alu_op): Update for attribute change.
(526_alu_shift_op): Likewise.
* config/arm/fa606te.md (606te_alu_op): Update for attribute change.
* config/arm/fa626te.md (626te_alu_op): Update for attribute change.
(626te_alu_shift_op): Likewise.
* config/arm/fa726te.md (726te_shift_op): Update for attribute change.
(726te_alu_op): Likewise.
(726te_alu_shift_op): Likewise.
(726te_alu_shift_reg_op): Likewise.
* config/arm/fmp626.md (mp626_alu_op): Update for attribute change.
(mp626_alu_shift_op): Likewise.
* config/arm/marvell-pj4.md (pj4_alu_e1): Update for attribute change.
(pj4_alu_e1_conds): Likewise.
(pj4_alu): Likewise.
(pj4_alu_conds): Likewise.
(pj4_shift): Likewise.
(pj4_shift_conds): Likewise.
(pj4_alu_shift): Likewise.
(pj4_alu_shift_conds): Likewise.
From-SVN: r201124
Georg-Johann Lay [Mon, 22 Jul 2013 11:22:25 +0000 (11:22 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.c-torture/execute/pr57124.x: Skip int16 platforms.
* gcc.c-torture/execute/pr53366-1.x: New: Skip int16 platforms.
From-SVN: r201123
Kyrylo Tkachov [Mon, 22 Jul 2013 10:47:26 +0000 (10:47 +0000)]
predicates.md (shiftable_operator_strict_it): New predicate.
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/predicates.md (shiftable_operator_strict_it):
New predicate.
* config/arm/thumb2.md (thumb_andsi_not_shiftsi_si):
Disable cond_exec version for arm_restrict_it.
(thumb2_smaxsi3): Convert to generate cond_exec.
(thumb2_sminsi3): Likewise.
(thumb32_umaxsi3): Likewise.
(thumb2_uminsi3): Likewise.
(thumb2_abssi2): Adjust constraints for arm_restrict_it.
(thumb2_neg_abssi2): Likewise.
(thumb2_mov_scc): Add alternative for 16-bit encoding.
(thumb2_movsicc_insn): Adjust alternatives.
(thumb2_mov_negscc): Disable for arm_restrict_it.
(thumb2_mov_negscc_strict_it): New pattern.
(thumb2_mov_notscc_strict_it): New pattern.
(thumb2_mov_notscc): Disable for arm_restrict_it.
(thumb2_ior_scc): Likewise.
(thumb2_ior_scc_strict_it): New pattern.
(thumb2_cond_move): Adjust for arm_restrict_it.
(thumb2_cond_arith): Disable for arm_restrict_it.
(thumb2_cond_arith_strict_it): New pattern.
(thumb2_cond_sub): Adjust for arm_restrict_it.
(thumb2_movcond): Likewise.
(thumb2_extendqisi_v6): Disable cond_exec variant for arm_restrict_it.
(thumb2_zero_extendhisi2_v6): Likewise.
(thumb2_zero_extendqisi2_v6): Likewise.
(orsi_notsi_si): Likewise.
(orsi_not_shiftsi_si): Likewise.
From-SVN: r201122
Georg-Johann Lay [Mon, 22 Jul 2013 10:18:52 +0000 (10:18 +0000)]
avr.c (avr_out_xload): No SBIS around LPM so that instruction sequence is 1 byte shorter.
* config/avr/avr.c (avr_out_xload): No SBIS around LPM so that
instruction sequence is 1 byte shorter.
From-SVN: r201121
Georg-Johann Lay [Mon, 22 Jul 2013 08:35:18 +0000 (08:35 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.c-torture/execute/pr57344-2.x: New. Skip int16.
* gcc.dg/pr53265.c: Add dg-require-effective-target size32plus.
* gcc.dg/torture/pr53366-1.c: Same.
* gcc.dg/torture/pr57381.c: Add dg-require-effective-target int32plus.
* gcc.dg/torture/pr56488.c: Same.
* gcc.dg/torture/pr57584.c: Same.
* gcc.dg/tree-ssa/pr57385.c: Same.
* gcc.dg/pr57154.c: Add dg-require-effective-target scheduling.
From-SVN: r201119
Uros Bizjak [Mon, 22 Jul 2013 08:27:25 +0000 (10:27 +0200)]
i386.md (nonlocal_goto_receiver): Delete insn if it is not needed after split.
gcc/
2013-07-22 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (nonlocal_goto_receiver): Delete insn if
it is not needed after split.
From-SVN: r201118
Jonathan Wakely [Mon, 22 Jul 2013 07:57:53 +0000 (08:57 +0100)]
Remove stray blank line.
From-SVN: r201117
GCC Administrator [Mon, 22 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201116
Tim Shen [Sun, 21 Jul 2013 23:34:02 +0000 (23:34 +0000)]
Partially implement regex_search.
2013-07-21 Tim Shen <timshen91@gmail.com>
Partially implement regex_search.
* include/bits/regex.h: regex_search.
* include/bits/regex_grep_matcher.h: _M_search_from_first.
* include/bits/regex_grep_matcher.tcc: Implement it.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
From-SVN: r201113
Jonathan Wakely [Sun, 21 Jul 2013 19:21:03 +0000 (19:21 +0000)]
re PR libstdc++/54352 (relaxed data race rules for ~condition_variable_any)
PR libstdc++/54352
* include/std/condition_variable (condition_variable_any): Move into
inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
* src/c++11/condition_variable.cc (condition_variable_any): Move
definitions to ...
* src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
* src/Makefile.am: Add new source file.
* src/Makefile.in: Regenerate.
From-SVN: r201112
Ondřej Bílka [Sun, 21 Jul 2013 18:40:33 +0000 (18:40 +0000)]
gigi.h: Likewise.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* gcc-interface/gigi.h: Likewise.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils2.c: Likewise.
* gnat_rm.texi: Likewise.
* gnat_ugn.texi: Likewise.
* raise-gcc.c: Likewise.
* sigtramp-ppcvxw.c: Likewise.
* sysdep.c: Likewise.
* terminals.c: Likewise.
From-SVN: r201111
Ondřej Bílka [Sun, 21 Jul 2013 18:31:07 +0000 (18:31 +0000)]
Fix typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* c-common.c: Fix typos.
* c-common.h: Likewise.
From-SVN: r201110
Ondřej Bílka [Sun, 21 Jul 2013 18:18:04 +0000 (18:18 +0000)]
Fix typos.
From-SVN: r201109
Mike Stump [Sun, 21 Jul 2013 18:04:43 +0000 (18:04 +0000)]
Fix typos.
From-SVN: r201108
Ondřej Bílka [Sun, 21 Jul 2013 17:57:23 +0000 (19:57 +0200)]
trans-decl.c: Fix comment typos.
2013-07-21 Ondřej Bílka <neleai@seznam.cz>
* trans-decl.c: Fix comment typos.
* trans-expr.c: Ditto.
2013-07-21 Ondřej Bílka <neleai@seznam.cz>
* io/transfer.c: Fix comment typos.
From-SVN: r201107
Ondřej Bílka [Sun, 21 Jul 2013 17:48:42 +0000 (17:48 +0000)]
class.c: Fix typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* class.c: Fix typos.
* cp-array-notation.c: Likewise.
* cp-objcp-common.c: Likewise.
* decl.c: Likewise.
* init.c: Likewise.
* mangle.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* semantics.c: Likewise.
From-SVN: r201106
Mike Stump [Sun, 21 Jul 2013 17:39:50 +0000 (17:39 +0000)]
Fix typos.
From-SVN: r201105
Mike Stump [Sun, 21 Jul 2013 17:00:56 +0000 (17:00 +0000)]
Fix.
From-SVN: r201104
Mike Stump [Sun, 21 Jul 2013 16:52:00 +0000 (16:52 +0000)]
Fix.
From-SVN: r201103
Mike Stump [Sun, 21 Jul 2013 16:48:23 +0000 (16:48 +0000)]
Fix.
From-SVN: r201102
Mike Stump [Sun, 21 Jul 2013 16:46:05 +0000 (16:46 +0000)]
Fix typo.
From-SVN: r201101
Mike Stump [Sun, 21 Jul 2013 16:38:48 +0000 (16:38 +0000)]
Fix.
From-SVN: r201100
Mike Stump [Sun, 21 Jul 2013 16:28:42 +0000 (16:28 +0000)]
Fix.
From-SVN: r201099
Ondřej Bílka [Sun, 21 Jul 2013 16:17:52 +0000 (16:17 +0000)]
pr41779.c: Fix typos.
2013-07-21 OndÅ
\99ej BÃlka <neleai@seznam.cz>
* c-c++-common/pr41779.c: Fix typos.
* gcc.c-torture/compile/
20031125-2.c: Likewise.
* gcc.c-torture/compile/
20040621-1.c: Likewise.
* gcc.c-torture/execute/
20020418-1.c: Likewise.
* gcc.dg/
20020108-1.c: Likewise.
* gcc.dg/atomic-generic-aux.c: Likewise.
* gcc.dg/builtin-complex-err-2.c: Likewise.
* gcc.dg/decl-1.c: Likewise.
* gcc.dg/di-sync-multithread.c: Likewise.
* gcc.dg/format/c90-printf-1.c: Likewise.
* gcc.dg/format/ms_c90-printf-1.c: Likewise.
* gcc.dg/long-long-compare-1.c: Likewise.
* gcc.dg/plugin/start_unit_plugin.c: Likewise.
* gcc.dg/pr17055-1.c: Likewise.
* gcc.dg/pr27095.c: Likewise.
* gcc.dg/torture/fp-int-convert.h: Likewise.
* gcc.dg/tree-prof/inliner-1.c: Likewise.
* gcc.dg/tree-ssa/
20030731-1.c: Likewise.
* gcc.dg/tree-ssa/forwprop-6.c: Likewise.
* gcc.dg/tree-ssa/ipa-cp-1.c: Likewise.
* gcc.dg/tree-ssa/loop-19.c: Likewise.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
* gcc.dg/tree-ssa/pr21001.c: Likewise.
* gcc.dg/tree-ssa/pr42585.c: Likewise.
* gcc.dg/tree-ssa/ssa-dse-5.c: Likewise.
* gcc.dg/vect/vect-cond-5.c: Likewise.
* gcc.dg/weak/typeof-2.c: Likewise.
* gcc.target/aarch64/aapcs64/abitest-common.h: Likewise.
* gcc.target/arm/naked-1.c: Likewise.
* gcc.target/i386/pr9771-1.c: Likewise.
* gcc.target/sparc/sparc-constant-1.c: Likewise.
* gcc.target/sparc/struct-ret-check.c: Likewise.
* gcc.target/x86_64/abi/test_struct_returning.c: Likewise.
* gfortran.dg/c_ptr_tests_8_funcs.c: Likewise.
* objc-obj-c++-shared/objc-test-suite-next-encode-assist-impl.h: Likewise.
From-SVN: r201098
Ondřej Bílka [Sun, 21 Jul 2013 15:38:21 +0000 (15:38 +0000)]
class.c: Fix typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* class.c: Fix typos.
* encoding.c: Likewise.
* init.c: Likewise.
* objc-private/runtime.h: Likewise.
* objc/runtime.h: Likewise.
* objc-sync.c: Likewise.
From-SVN: r201097
Ondřej Bílka [Sun, 21 Jul 2013 15:33:00 +0000 (15:33 +0000)]
Fix some typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* objc-act.c: Fix typos.
* objc-encoding.c: Likewise.
* objc-gnu-runtime-abi-01.c: Likewise.
* objc-next-runtime-abi-01.c: Likewise.
* objc-next-runtime-abi-02.c: Likewise.
From-SVN: r201096
Tobias Burnus [Sun, 21 Jul 2013 15:16:21 +0000 (17:16 +0200)]
re PR libfortran/35862 ([F2003] Implement new rounding modes for run time)
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/35862
* config/fpu-387.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): Add missing _ to fix build.
From-SVN: r201095
Thomas Koenig [Sun, 21 Jul 2013 13:44:03 +0000 (13:44 +0000)]
re PR fortran/56937 (Unnecessarily temporary with array-vector assignments)
2013-07-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/56937
* dependency.c (gfc_dep_resolver): Treat identical
array subscripts as identical; don't unconditionally
return a dependency if an array subscript is found.
2013-07-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/56937
* gfortran.dg/dependency_42.f90: New test.
* gfortran.dg/dependency_43.f90: New test.
From-SVN: r201094
Tobias Burnus [Sun, 21 Jul 2013 11:54:27 +0000 (13:54 +0200)]
re PR libfortran/35862 ([F2003] Implement new rounding modes for run time)
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/35862
* libgfortran.h (GFC_FPE_DOWNWARD, GFC_FPE_TONEAREST,
GFC_FPE_TOWARDZERO, GFC_FPE_UPWARD): New defines.
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/35862
* libgfortran.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): New prototypes.
* config/fpu-387.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): New functions.
* config/fpu-aix.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): Ditto.
* config/fpu-generic.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): Ditto.
* config/fpu-glibc.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): Ditto.
* config/fpu-sysv.h (set_fpu_rounding_mode,
get_fpu_rounding_mode): Ditto.
* configure.ac: Check for fp_rnd and fp_rnd_t.
* io/io.h (enum unit_round): Use GFC_FPE_* for the value.
* io/read.c (convert_real): Set FP ronding mode.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/35862
* gfortran.dg/round_4.f90: New.
Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r201093
Tobias Burnus [Sun, 21 Jul 2013 11:46:43 +0000 (13:46 +0200)]
re PR fortran/57894 (min/max required actual argument missing)
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/57894
* check.c (min_max_args): Add keyword= check.
2013-07-21 Tobias Burnus <burnus@net-b.de>
PR fortran/57894
* gfortran.dg/min_max_conformance_2.f90: New.
From-SVN: r201092
Jakub Jelinek [Sun, 21 Jul 2013 02:28:03 +0000 (04:28 +0200)]
re PR preprocessor/57620 (Phantom terminator confuses raw string literal parsing.)
PR preprocessor/57620
* lex.c (lex_raw_string): Undo phase1 and phase2 transformations
between R" and final " rather than only in between R"del( and )del".
* c-c++-common/raw-string-2.c (s12, u12, U12, L12): Remove.
(main): Don't test {s,u,U,L}12.
* c-c++-common/raw-string-13.c: New test.
* c-c++-common/raw-string-14.c: New test.
* c-c++-common/raw-string-15.c: New test.
* c-c++-common/raw-string-16.c: New test.
From-SVN: r201091
GCC Administrator [Sun, 21 Jul 2013 00:16:29 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201090
Iain Sandoe [Sat, 20 Jul 2013 17:24:24 +0000 (17:24 +0000)]
correct a ChangeLog commit error.
From-SVN: r201087
Iain Sandoe [Sat, 20 Jul 2013 16:22:59 +0000 (16:22 +0000)]
re PR target/51784 (PIC register not correctly preserved in nested funcs / with non-local goto)
gcc/
PR target/51784
* config/i386/i386.c (output_set_got) [TARGET_MACHO]: Adjust to emit a
second label for nonlocal goto receivers. Don't output pic base labels
unless we're producing PIC; mark that action unreachable().
(ix86_save_reg): If the function contains a nonlocal label, save the
PIC base reg.
* config/darwin-protos.h (machopic_should_output_picbase_label): New.
* gcc/config/darwin.c (emitted_pic_label_num): New GTY.
(update_pic_label_number_if_needed): New.
(machopic_output_function_base_name): Adjust for nonlocal receiver
case.
(machopic_should_output_picbase_label): New.
* config/i386/i386.md (enum unspecv): UNSPECV_NLGR: New.
(nonlocal_goto_receiver): New insn and split.
From-SVN: r201086
Eric Botcazou [Sat, 20 Jul 2013 08:41:29 +0000 (08:41 +0000)]
re PR ada/57934 (typo in definition of CAT in gcc-interface/ada.h for traditional preprocessor)
PR ada/57934
* gcc-interface/ada.h (CAT): Fix typo.
From-SVN: r201084
James Greenhalgh [Sat, 20 Jul 2013 07:56:41 +0000 (07:56 +0000)]
[AArch64] Rewrite vabs<q>_s<8,16,32,64> AdvSIMD intrinsics to fold to tree
gcc/
* config/aarch64/aarch64-builtins.c
(aarch64_fold_builtin): Fold abs in all modes.
* config/aarch64/aarch64-simd-builtins.def
(abs): Enable for all modes.
* config/aarch64/arm_neon.h
(vabs<q>_s<8,16,32,64): Rewrite using builtins.
(vabs_f64): Add missing intrinsic.
gcc/testsuite/
* gcc.target/aarch64/vabs_intrinsic_1.c: New file.
From-SVN: r201083
Joern Rennecke [Sat, 20 Jul 2013 06:50:43 +0000 (06:50 +0000)]
pr53366-1.c: Only run for target { size32plus }.
* gcc.dg/torture/pr53366-1.c: Only run for target { size32plus }.
* gcc.dg/torture/pr56488.c: Likewise.
From-SVN: r201082
Joern Rennecke [Sat, 20 Jul 2013 06:39:37 +0000 (06:39 +0000)]
pr21090.c: Do vrp1 scan check only for target { ! keeps_null_pointer_checks }.
* gcc.dg/tree-ssa/pr21090.c: Do vrp1 scan check only for
target { ! keeps_null_pointer_checks }.
* gcc.dg/tree-ssa/unreachable.c: Do optimized scan check only for
target { ! keeps_null_pointer_checks }.
From-SVN: r201081
Joern Rennecke [Sat, 20 Jul 2013 06:04:01 +0000 (06:04 +0000)]
* gcc.dg/pr57154.c: Add dg-require-effective-target scheduling.
From-SVN: r201080
GCC Administrator [Sat, 20 Jul 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201078
Yvan Roux [Fri, 19 Jul 2013 21:30:20 +0000 (21:30 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r201069
Ian Bolton [Fri, 19 Jul 2013 18:41:22 +0000 (18:41 +0000)]
AArch64 vabs_s64 intrinsic
From-SVN: r201067
Jan Hubicka [Fri, 19 Jul 2013 18:19:48 +0000 (20:19 +0200)]
lto-partition.c (lto_balanced_map): Fix -fno-toplevel-reorder partitioning of variables.
* lto-partition.c (lto_balanced_map): Fix -fno-toplevel-reorder
partitioning of variables.
From-SVN: r201065
David Edelsohn [Fri, 19 Jul 2013 14:42:59 +0000 (14:42 +0000)]
gcov-14.c: Skip on AIX.
* gcc.misc-tests/gcov-14.c: Skip on AIX.
* gcc.dg/simulate-thread/simulate-thread.exp: Skip on AIX.
From-SVN: r201062
David Edelsohn [Fri, 19 Jul 2013 14:37:34 +0000 (14:37 +0000)]
* g++.old-deja/g++.other/init19.C: Require cxa_atext.
From-SVN: r201061
David Edelsohn [Fri, 19 Jul 2013 14:35:44 +0000 (14:35 +0000)]
pr56819.C: Skip on AIX.
* g++.dg/debug/pr56819.C: Skip on AIX.
* g++.dg/ext/vector23.C: Ignore vector ABI warning.
* g++.dg/guality/guality.exp: Skip on AIX.
From-SVN: r201060
David Edelsohn [Fri, 19 Jul 2013 14:32:26 +0000 (14:32 +0000)]
* lib/dg-pch.exp (dg-flags-pch): Skip on AIX.
From-SVN: r201059
David Edelsohn [Fri, 19 Jul 2013 14:28:16 +0000 (14:28 +0000)]
intrinsic_nearest.x: Skip on AIX.
* gfortran.fortran-torture/execute/intrinsic_nearest.x: Skip on AIX.
* gfortran.dg/nint_2.f90: Correct AIX target name to skip.
* gfortran.dg/guality/guality.exp: Skip on AIX.
From-SVN: r201058
David Edelsohn [Fri, 19 Jul 2013 14:25:26 +0000 (14:25 +0000)]
* gfortran.fortran-torture/execute/intrinsic_nearest.x: Skip AIX.
From-SVN: r201057
Georg-Johann Lay [Fri, 19 Jul 2013 11:10:08 +0000 (11:10 +0000)]
re PR target/57516 ([avr] Incorrect fixed-point rounding result in the overflow case)
gcc/
PR target/57516
* config/avr/avr-fixed.md (round<mode>3_const): Turn expander to insn.
* config/avr/avr.md (adjust_len): Add `round'.
* config/avr/avr-protos.h (avr_out_round): New prototype.
(avr_out_plus): Add `out_label' argument.
* config/avr/avr.c (avr_out_plus_1): Add `out_label' argument.
(avr_out_plus): Pass down `out_label' to avr_out_plus_1.
Handle the case where `insn' is just a pattern.
(avr_out_bitop): Handle the case where `insn' is just a pattern.
(avr_out_round): New function.
(avr_adjust_insn_length): Handle ADJUST_LEN_ROUND.
libgcc/
PR target/57516
* config/avr/lib1funcs-fixed.S (__roundqq3, __rounduqq3)
(__round_s2_const, __round_u2_const)
(__round_s4_const, __round_u4_const, __round_x8):
Saturate result if addition result cannot be represented.
gcc/testsuite/
PR target/57516
* gcc.target/avr/torture/builtins-4-roundfx.c (test2hr, test2k):
Adjust to corrected rounding.
From-SVN: r201051
Chung-Ju Wu [Fri, 19 Jul 2013 08:02:56 +0000 (08:02 +0000)]
MAINTAINERS (nds32 port): Add Chung-Ju Wu and Shiva Chen as nds32 port maintainers.
* MAINTAINERS (nds32 port): Add Chung-Ju Wu and Shiva Chen as
nds32 port maintainers.
Co-Authored-By: Shiva Chen <shiva0217@gmail.com>
From-SVN: r201049
Georg-Johann Lay [Fri, 19 Jul 2013 07:53:11 +0000 (07:53 +0000)]
target-supports.exp (check_effective_target_cilkplus): New proc.
* lib/target-supports.exp (check_effective_target_cilkplus): New proc.
* gcc.dg/cilk-plus/cilk-plus.exp: only run if
check_effective_target_cilkplus.
* g++.dg/cilk-plus/cilk-plus.exp: Same.
From-SVN: r201048
GCC Administrator [Fri, 19 Jul 2013 00:16:29 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201045
David Holsgrove [Thu, 18 Jul 2013 23:57:12 +0000 (23:57 +0000)]
microblaze.c (microblaze_expand_prologue): Add check for flag_stack_usage to handle -fstack-usage support
* gcc/config/microblaze/microblaze.c (microblaze_expand_prologue):
Add check for flag_stack_usage to handle -fstack-usage support
From-SVN: r201042
Pat Haugen [Thu, 18 Jul 2013 20:24:34 +0000 (20:24 +0000)]
rs6000.c (rs6000_option_override_internal): Adjust flag interaction for new Power8 flags and VSX.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Adjust flag
interaction for new Power8 flags and VSX.
From-SVN: r201041
Pat Haugen [Thu, 18 Jul 2013 19:33:46 +0000 (19:33 +0000)]
* gcc.target/powerpc/pr57744.c: Fix typo.
From-SVN: r201040
Sriraman Tallam [Thu, 18 Jul 2013 19:24:22 +0000 (19:24 +0000)]
PR57698, only report errors from early inlining when optimization is turned
PR57698, only report errors from early inlining when optimization is turned
off.
PR middle-end/57698
* tree-inline.c (expand_call_inline): Emit errors during
early_inlining only if optimization is not turned on.
PR middle-end/57698
* gcc.c-torture/compile/pr57698.c: New test.
* gcc.c-torture/compile/pr43791.c: Remove prune output
directive.
* gcc.c-torture/compile/pr44043.c: Ditto.
From-SVN: r201039
David Malcolm [Thu, 18 Jul 2013 18:55:48 +0000 (18:55 +0000)]
passes.def: New.
* passes.def: New.
* passes.c (init_optimization_passes): Move the construction of
the pass hierarchy into a new passes.def file.
* Makefile.in (passes.o): Add dependency on passes.def.
From-SVN: r201038
David Malcolm [Thu, 18 Jul 2013 18:25:32 +0000 (18:25 +0000)]
passes.c (init_optimization_passes): Introduce macros for constructing the tree of passes (INSERT_PASSES_AFTER...
* passes.c (init_optimization_passes): Introduce macros for
constructing the tree of passes (INSERT_PASSES_AFTER,
PUSH_INSERT_PASSES_WITHIN, POP_INSERT_PASSES,
TERMINATE_PASS_LIST).
From-SVN: r201037
Vladimir Makarov [Thu, 18 Jul 2013 17:04:10 +0000 (17:04 +0000)]
[multiple changes]
2013-07-18 Vladimir Makarov <vmakarov@redhat.com>
Wei Mi <wmi@google.com>
PR rtl-optimization/57878
* lra-assigns.c (assign_by_spills): Move non_reload_pseudos to the
top.
(reload_pseudo_compare_func): Check nregs first for reload
pseudos.
2013-07-18 Wei Mi <wmi@google.com>
PR rtl-optimization/57878
* g++.dg/pr57518.C: New test.
From-SVN: r201036
David Malcolm [Thu, 18 Jul 2013 16:22:52 +0000 (16:22 +0000)]
tree-pass.h (pass_ipa_lto_wpa_fixup): Remove redundant decl.
* tree-pass.h (pass_ipa_lto_wpa_fixup): Remove redundant decl.
From-SVN: r201035
Po-Chun Chang [Thu, 18 Jul 2013 16:07:37 +0000 (10:07 -0600)]
read-rtl.c (validate_const_int): Once an invalid character is seen, quit the loop.
* read-rtl.c (validate_const_int): Once an invalid character is
seen, quit the loop.
* gengtype.c (write_roots): Similarly once we find the
"deletable" or "if_marked" option.
From-SVN: r201034
Kyrylo Tkachov [Thu, 18 Jul 2013 10:17:44 +0000 (10:17 +0000)]
pr42611.c: Move dg-error to correct line.
gcc/testsuite/
2013-07-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.dg/pr42611.c: Move dg-error to correct line.
From-SVN: r201027
Sofiane Naci [Thu, 18 Jul 2013 09:16:05 +0000 (09:16 +0000)]
arm.md (attribute "insn"): Delete values "mrs", "msr", "xtab" and "sat".
* config/arm/arm.md (attribute "insn"): Delete values "mrs", "msr",
"xtab" and "sat". Move value "clz" from here to ...
(attriubte "type"): ... here.
(satsi_<SAT:code>): Delete "insn" attribute.
(satsi_<SAT:code>_shift): Likewise.
(arm_zero_extendqisi2addsi): Likewise.
(arm_extendqisi2addsi): Likewise.
(clzsi2): Update for attribute changes.
(rbitsi2): Likewise.
* config/arm/arm-fixed.md (arm_ssatsihi_shift): Delete "insn" attribute.
(arm_usatsihi): Likewise.
* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute change.
From-SVN: r201025
Sofiane Naci [Thu, 18 Jul 2013 09:08:56 +0000 (09:08 +0000)]
arm.md (attribute "type"): Rename "simple_alu_imm" to "arlo_imm".
* config/arm/arm.md (attribute "type"): Rename "simple_alu_imm" to
"arlo_imm". Rename "alu_reg" to "arlo_reg". Rename "simple_alu_shift" to
"extend". Split "alu_shift" into "shift" and "arlo_shift". Split
"alu_shift_reg" into "shift_reg" and "arlo_shift_reg". List types
in alphabetical order.
(attribute "core_cycles"): Update for attribute changes.
(arm_addsi3): Likewise.
(addsi3_compare0): Likewise.
(addsi3_compare0_scratch): Likewise.
(addsi3_compare_op1): Likewise.
(addsi3_compare_op2): Likewise.
(compare_addsi2_op0): Likewise.
(compare_addsi2_op1): Likewise.
(addsi3_carryin_shift_<optab>): Likewise.
(subsi3_carryin_shift): Likewise.
(rsbsi3_carryin_shift): Likewise.
(arm_subsi3_insn): Likewise.
(subsi3_compare0): Likewise.
(subsi3_compare): Likewise.
(arm_andsi3_insn): Likewise.
(thumb1_andsi3_insn): Likewise.
(andsi3_compare0): Likewise.
(andsi3_compare0_scratch): Likewise.
(zeroextractsi_compare0_scratch
(andsi_not_shiftsi_si): Likewise.
(iorsi3_insn): Likewise.
(iorsi3_compare0): Likewise.
(iorsi3_compare0_scratch): Likewise.
(arm_xorsi3): Likewise.
(thumb1_xorsi3_insn): Likewise.
(xorsi3_compare0): Likewise.
(xorsi3_compare0_scratch): Likewise.
(satsi_<SAT:code>_shift): Likewise.
(rrx): Likewise.
(arm_shiftsi3): Likewise.
(shiftsi3_compare0): Likewise.
(not_shiftsi): Likewise.
(not_shiftsi_compare0): Likewise.
(not_shiftsi_compare0_scratch): Likewise.
(arm_one_cmplsi2): Likewise.
(thumb_one_complsi2): Likewise.
(notsi_compare0): Likewise.
(notsi_compare0_scratch): Likewise.
(thumb1_zero_extendhisi2): Likewise.
(arm_zero_extendhisi2): Likewise.
(arm_zero_extendhisi2_v6): Likewise.
(arm_zero_extendhisi2addsi): Likewise.
(thumb1_zero_extendqisi2): Likewise.
(thumb1_zero_extendqisi2_v6): Likewise.
(arm_zero_extendqisi2): Likewise.
(arm_zero_extendqisi2_v6): Likewise.
(arm_zero_extendqisi2addsi): Likewise.
(thumb1_extendhisi2): Likewise.
(arm_extendhisi2): Likewise.
(arm_extendhisi2_v6): Likewise.
(arm_extendqisi): Likewise.
(arm_extendqisi_v6): Likewise.
(arm_extendqisi2addsi): Likewise.
(thumb1_extendqisi2): Likewise.
(thumb1_movdi_insn): Likewise.
(arm_movsi_insn): Likewise.
(movsi_compare0): Likewise.
(movhi_insn_arch4): Likewise.
(movhi_bytes): Likewise.
(arm_movqi_insn): Likewise.
(thumb1_movqi_insn): Likewise.
(arm32_movhf): Likewise.
(thumb1_movhf): Likewise.
(arm_movsf_soft_insn): Likewise.
(thumb1_movsf_insn): Likewise.
(movdf_soft_insn): Likewise.
(thumb_movdf_insn): Likewise.
(arm_cmpsi_insn): Likewise.
(cmpsi_shiftsi): Likewise.
(cmpsi_shiftsi_swp): Likewise.
(arm_cmpsi_negshiftsi_si): Likewise.
(movsicc_insn): Likewise.
(movsfcc_soft_insn): Likewise.
(arith_shiftsi): Likewise.
(arith_shiftsi_compare0
(arith_shiftsi_compare0_scratch
(sub_shiftsi): Likewise.
(sub_shiftsi_compare0
(sub_shiftsi_compare0_scratch
(and_scc): Likewise.
(cond_move): Likewise.
(if_plus_move): Likewise.
(if_move_plus): Likewise.
(if_move_not): Likewise.
(if_not_move): Likewise.
(if_shift_move): Likewise.
(if_move_shift): Likewise.
(if_shift_shift): Likewise.
(if_not_arith): Likewise.
(if_arith_not): Likewise.
(cond_move_not): Likewise.
(thumb1_ashlsi3): Set type attribute.
(thumb1_ashrsi3): Likewise.
(thumb1_lshrsi3): Likewise.
(thumb1_rotrsi3): Likewise.
(shiftsi3_compare0_scratch): Likewise.
* config/arm/neon.md (neon_mov<mode>): Update for attribute changes.
(neon_mov<mode>): Likewise.
* config/arm/thumb2.md (thumb_andsi_not_shiftsi_si): Update for attribute
changes.
(thumb2_movsi_insn): Likewise.
(thumb2_cmpsi_neg_shiftsi): Likewise.
(thumb2_extendqisi_v6): Likewise.
(thumb2_zero_extendhisi2_v6): Likewise.
(thumb2_zero_extendqisi2_v6): Likewise.
(thumb2_shiftsi3_short): Likewise.
(thumb2_addsi3_compare0_scratch): Likewise.
(orsi_not_shiftsi_si): Likewise.
* config/arm/vfp.md (arm_movsi_vfp): Update for attribute changes.
* config/arm/arm-fixed.md (arm_ssatsihi_shift): Update for attribute
changes.
* config/arm/arm1020e.md (1020alu_op): Update for attribute changes.
(1020alu_shift_op): Likewise.
(1020alu_shift_reg_op): Likewise.
* config/arm/arm1026ejs.md (alu_op): Update for attribute changes.
(alu_shift_op): Likewise.
(alu_shift_reg_op): Likewise.
* config/arm/arm1136jfs.md (11_alu_op): Update for attribute changes.
(11_alu_shift_op): Likewise.
(11_alu_shift_reg_op): Likewise.
* config/arm/arm926ejs.md (9_alu_op): Update for attribute changes.
(9_alu_shift_reg_op): Likewise.
* config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute changes.
(cortex_a15_alu_shift): Likewise.
(cortex_a15_alu_shift_reg): Likewise.
* config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute changes.
(cortex_a5_alu_shift): Likewise.
* config/arm/cortex-a53.md (cortex_a53_alu) : Update for attribute
changes.
(cortex_a53_alu_shift): Likewise.
* config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute
changes.
(cortex_a7_alu_reg): Likewise.
(cortex_a7_alu_shift): Likewise.
* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute changes.
(cortex_a8_alu_shift): Likewise.
(cortex_a8_alu_shift_reg): Likewise.
(cortex_a8_mov): Likewise.
* config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute changes.
(cortex_a9_dp_shift): Likewise.
* config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute changes.
* config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute changes.
(cortex_r4_mov): Likewise.
(cortex_r4_alu_shift): Likewise.
(cortex_r4_alu_shift_reg): Likewise.
* config/arm/fa526.md (526_alu_op): Update for attribute changes.
(526_alu_shift_op): Likewise.
* config/arm/fa606te.md (606te_alu_op): Update for attribute changes.
* config/arm/fa626te.md (626te_alu_op): Update for attribute changes.
(626te_alu_shift_op): Likewise.
* config/arm/fa726te.md (726te_shift_op): Update for attribute changes.
(726te_alu_op): Likewise.
(726te_alu_shift_op): Likewise.
(726te_alu_shift_reg_op): Likewise.
* config/arm/fmp626.md (mp626_alu_op): Update for attribute changes.
(mp626_alu_shift_op): Likewise.
* config/arm/marvell-pj4.md (pj4_alu_e1): Update for attribute changes.
(pj4_alu_e1_conds): Likewise.
(pj4_alu): Likewise.
(pj4_alu_conds): Likewise.
(pj4_shift): Likewise.
(pj4_shift_conds): Likewise.
(pj4_alu_shift): Likewise.
(pj4_alu_shift_conds): Likewise.
* config/arm/arm.c (xscale_sched_adjust_cost): Update for attribute changes.
(cortexa7_older_only): Likewise.
(cortexa7_younger): Likewise.
From-SVN: r201024