platform/upstream/linaro-gcc.git
10 years agoEnhancement of call graph API
marxin [Wed, 4 Jun 2014 09:39:24 +0000 (09:39 +0000)]
Enhancement of call graph API

* cgraph.h (expand_thunk): New argument added.
(address_taken_from_non_vtable_p): New global function.
* ipa-visibility.c (address_taken_from_non_vtable_p): Likewise.
* cgraphclones.c (duplicate_thunk_for_node): Argument added to call.
* cgraphunit.c (analyze_function): Likewise.
(assemble_thunks_and_aliases): Argument added to call.
(expand_thunk): New argument forces to produce GIMPLE thunk.

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

10 years agoMake coverage_compute_cfg_checksum callable with arg.
marxin [Wed, 4 Jun 2014 09:31:25 +0000 (09:31 +0000)]
Make coverage_compute_cfg_checksum callable with arg.

* coverage.h (coverage_compute_cfg_checksum): Argument added.
* coverage.c (coverage_compute_cfg_checksum): Likewise.
* profile.c (branch_prob): Likewise.

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

10 years ago2014-06-04 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 4 Jun 2014 09:23:52 +0000 (09:23 +0000)]
2014-06-04  Martin Jambor  <mjambor@suse.cz>

PR ipa/61340
* ipa-pure-const.c (propagate_pure_const): Add unreachable default
handler for switch on an ipa_ref_use enum.
* ipa-reference.c (analyze_function): Likewise.

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

10 years agoAdd myself to the MAINTAINERS file.
thopre01 [Wed, 4 Jun 2014 09:11:48 +0000 (09:11 +0000)]
Add myself to the MAINTAINERS file.

2014-06-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>

* MAINTAINERS (Write After Approval): Add myself.

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

10 years ago * recog.c (peep2_attempt): Copy SIBLING_CALL_P flag
ktietz [Wed, 4 Jun 2014 07:46:55 +0000 (07:46 +0000)]
* recog.c (peep2_attempt): Copy SIBLING_CALL_P flag
from old call-instruction.

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

10 years ago PR c/30020
mpolacek [Wed, 4 Jun 2014 07:26:06 +0000 (07:26 +0000)]
PR c/30020
* c-common.c (check_case_bounds): Add location parameter.
Use it.
(c_add_case_label): Pass loc to check_case_bounds.

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

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

10 years ago * config/aarch64/aarch64.c (aarch64_classify_address)
amker [Wed, 4 Jun 2014 03:45:50 +0000 (03:45 +0000)]
* config/aarch64/aarch64.c (aarch64_classify_address)
(aarch64_legitimize_reload_address): Support full addressing modes
for vector modes.
* config/aarch64/aarch64.md (mov<mode>, movmisalign<mode>)
(*aarch64_simd_mov<mode>, *aarch64_simd_mov<mode>): Relax predicates.

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

10 years agoDaily bump.
gccadmin [Wed, 4 Jun 2014 00:17:09 +0000 (00:17 +0000)]
Daily bump.

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

10 years ago2014-06-03 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 3 Jun 2014 22:44:39 +0000 (22:44 +0000)]
2014-06-03  Andrew Pinski  <apinski@cavium.com>

* config/aarch64/aarch64.c (aarch64_if_then_else_costs): Allow non comparisons
for OP0.

2014-06-03  Andrew Pinski  <apinski@cavium.com>

* gcc.c-torture/compile/20140528-1.c: New testcase.

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

10 years ago2014-06-03 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 3 Jun 2014 22:42:47 +0000 (22:42 +0000)]
2014-06-03  Andrew Pinski  <apinski@cavium.com>

* config/aarch64/aarch64.c (aarch64_if_then_else_costs): New function.
(aarch64_rtx_costs): Use aarch64_if_then_else_costs.

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

10 years ago * config/i386/i386.c (ix86_function_value_regno_p): Disallow DX_REG
ktietz [Tue, 3 Jun 2014 22:01:19 +0000 (22:01 +0000)]
    * config/i386/i386.c (ix86_function_value_regno_p): Disallow DX_REG
        for 64-bit ms-abi.

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

10 years ago2014-06-03 Dehao Chen <dehao@google.com>
dehao [Tue, 3 Jun 2014 21:36:05 +0000 (21:36 +0000)]
2014-06-03  Dehao Chen  <dehao@google.com>

* tree-cfg.c (gimple_merge_blocks): Only reset count when BBs are in
the same loop.
* gcc.dg/tree-prof/merge_block.c: New test.

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

10 years ago * g++.dg/ext/mv14.C (dg-options): Add -march=x86-64.
uros [Tue, 3 Jun 2014 17:57:42 +0000 (17:57 +0000)]
* g++.dg/ext/mv14.C (dg-options): Add -march=x86-64.
* g++.dg/ext/mv15.C (dg-options): Ditto.

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

10 years agogcc/cp
paolo [Tue, 3 Jun 2014 17:48:36 +0000 (17:48 +0000)]
gcc/cp
2014-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1423
PR c++/52174
* call.c (standard_conversion): Convert nullptr to bool only
in case of direct-initialization.
(convert_like_real): Provide informative error message.

gcc/testsuite
2014-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1423
PR c++/52174
* g++.dg/cpp0x/nullptr31.C: New.
* g++.dg/cpp0x/sfinae-nullptr1.C: Likewise.
* g++.dg/cpp0x/nullptr17.C: Update.

libstdc++-v3
2014-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1423
PR c++/52174
* testsuite/20_util/is_assignable/value.cc: Update.

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

10 years ago PR c/60439
mpolacek [Tue, 3 Jun 2014 17:35:34 +0000 (17:35 +0000)]
PR c/60439
* doc/invoke.texi: Document -Wswitch-bool.
* function.c (stack_protect_epilogue): Cast controlling expression of
the switch to int.
* gengtype.c (walk_type): Generate switch expression with its
controlling expression cast to int.
c/
* c-parser.c (c_parser_switch_statement): Pass explicit_cast_p to
c_start_case.
* c-tree.h (c_start_case): Update.
* c-typeck.c (c_start_case): Add new boolean parameter.  Warn if
switch condition has boolean value.
cp/
* semantics.c (finish_switch_cond): Warn if switch condition has
boolean value.
c-family/
* c.opt (Wswitch-bool): New option.
testsuite/
* c-c++-common/pr60439.c: New test.
* g++.dg/eh/scope1.C (f4): Add dg-warning.

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

10 years ago * config/avr/avr-mcus.def: Add new avr25 devices attiny441, attiny828
denisc [Tue, 3 Jun 2014 16:26:09 +0000 (16:26 +0000)]
* config/avr/avr-mcus.def: Add new avr25 devices attiny441, attiny828
and attiny841.
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

* config/avr/avr-mcus.def (ata6616c): Add new avr25 device.
(ata6617c, ata664251): Add new avr35 devices.
(ata6612c): Add new avr4 device.
(ata6613c, ata6614q): Add new avr5 devices.
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

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

10 years ago PR c++/60992
jason [Tue, 3 Jun 2014 15:39:20 +0000 (15:39 +0000)]
PR c++/60992
* pt.c (tsubst_copy) [VAR_DECL]: Try lookup first.  Add a new
variable to local_specializations.

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

10 years ago[PATCH AArch64 2/2] Correct signedness of builtins, remove casts from arm_neon.h
alalaw01 [Tue, 3 Jun 2014 15:06:01 +0000 (15:06 +0000)]
[PATCH AArch64 2/2] Correct signedness of builtins, remove casts from arm_neon.h

* gcc/config/aarch64/aarch64-builtins.c
(aarch64_types_binop_ssu_qualifiers): New static data.
(TYPES_BINOP_SSU): Define.
* gcc/config/aarch64/aarch64-simd-builtins.def (suqadd, ushl, urshl,
urshr_n, ushll_n): Use appropriate unsigned qualifiers.
* gcc/config/aarch64/arm_neon.h (vrshl_u8, vrshl_u16, vrshl_u32,
vrshl_u64, vrshlq_u8, vrshlq_u16, vrshlq_u32, vrshlq_u64, vrshld_u64,
vrshr_n_u8, vrshr_n_u16, vrshr_n_u32, vrshr_n_u64, vrshrq_n_u8,
vrshrq_n_u16, vrshrq_n_u32, vrshrq_n_u64, vrshrd_n_u64, vshll_n_u8,
vshll_n_u16, vshll_n_u32, vuqadd_s8, vuqadd_s16, vuqadd_s32,
vuqadd_s64, vuqaddq_s8, vuqaddq_s16, vuqaddq_s32, vuqaddq_s64,
vuqaddb_s8, vuqaddh_s16, vuqadds_s32, vuqaddd_s64): Add signedness
suffix to builtin function name, remove cast.
(vshl_s8, vshl_s16, vshl_s32, vshl_s64, vshl_u8, vshl_u16, vshl_u32,
vshl_u64, vshlq_s8, vshlq_s16, vshlq_s32, vshlq_s64, vshlq_u8,
vshlq_u16, vshlq_u32, vshlq_u64, vshld_s64, vshld_u64): Remove cast.

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

10 years ago[PATCH AArch64 1/2] Correct signedness of builtins, remove casts from arm_neon.h
alalaw01 [Tue, 3 Jun 2014 14:57:22 +0000 (14:57 +0000)]
[PATCH AArch64 1/2] Correct signedness of builtins, remove casts from arm_neon.h

* gcc/config/aarch64/aarch64-builtins.c
(aarch64_types_binop_uus_qualifiers,
aarch64_types_shift_to_unsigned_qualifiers,
aarch64_types_unsigned_shiftacc_qualifiers): Define.
* gcc/config/aarch64/aarch64-simd-builtins.def (uqshl, uqrshl, uqadd,
uqsub, usqadd, usra_n, ursra_n, uqshrn_n, uqrshrn_n, usri_n, usli_n,
sqshlu_n, uqshl_n): Update qualifiers.
* gcc/config/aarch64/arm_neon.h (vqadd_u8, vqadd_u16, vqadd_u32,
vqadd_u64, vqaddq_u8, vqaddq_u16, vqaddq_u32, vqaddq_u64, vqsub_u8,
vqsub_u16, vqsub_u32, vqsub_u64, vqsubq_u8, vqsubq_u16, vqsubq_u32,
vqsubq_u64, vqaddb_u8, vqaddh_u16, vqadds_u32, vqaddd_u64, vqrshl_u8,
vqrshl_u16, vqrshl_u32, vqrshl_u64, vqrshlq_u8, vqrshlq_u16,
vqrshlq_u32, vqrshlq_u64, vqrshlb_u8, vqrshlh_u16, vqrshls_u32,
vqrshld_u64, vqrshrn_n_u16, vqrshrn_n_u32, vqrshrn_n_u64,
vqrshrnh_n_u16, vqrshrns_n_u32, vqrshrnd_n_u64, vqshl_u8, vqshl_u16,
vqshl_u32, vqshl_u64, vqshlq_u8, vqshlq_u16, vqshlq_u32, vqshlq_u64,
vqshlb_u8, vqshlh_u16, vqshls_u32, vqshld_u64, vqshl_n_u8, vqshl_n_u16,
vqshl_n_u32, vqshl_n_u64, vqshlq_n_u8, vqshlq_n_u16, vqshlq_n_u32,
vqshlq_n_u64, vqshlb_n_u8, vqshlh_n_u16, vqshls_n_u32, vqshld_n_u64,
vqshlu_n_s8, vqshlu_n_s16, vqshlu_n_s32, vqshlu_n_s64, vqshluq_n_s8,
vqshluq_n_s16, vqshluq_n_s32, vqshluq_n_s64, vqshlub_n_s8,
vqshluh_n_s16, vqshlus_n_s32, vqshlud_n_s64, vqshrn_n_u16,
vqshrn_n_u32, vqshrn_n_u64, vqshrnh_n_u16, vqshrns_n_u32,
vqshrnd_n_u64, vqsubb_u8, vqsubh_u16, vqsubs_u32, vqsubd_u64,
vrsra_n_u8, vrsra_n_u16, vrsra_n_u32, vrsra_n_u64, vrsraq_n_u8,
vrsraq_n_u16, vrsraq_n_u32, vrsraq_n_u64, vrsrad_n_u64, vsli_n_u8,
vsli_n_u16, vsli_n_u32,vsli_n_u64, vsliq_n_u8, vsliq_n_u16,
vsliq_n_u32, vsliq_n_u64, vslid_n_u64, vsqadd_u8, vsqadd_u16,
vsqadd_u32, vsqadd_u64, vsqaddq_u8, vsqaddq_u16, vsqaddq_u32,
vsqaddq_u64, vsqaddb_u8, vsqaddh_u16, vsqadds_u32, vsqaddd_u64,
vsra_n_u8, vsra_n_u16, vsra_n_u32, vsra_n_u64, vsraq_n_u8,
vsraq_n_u16, vsraq_n_u32, vsraq_n_u64, vsrad_n_u64, vsri_n_u8,
vsri_n_u16, vsri_n_u32, vsri_n_u64, vsriq_n_u8, vsriq_n_u16,
vsriq_n_u32, vsriq_n_u64, vsrid_n_u64): Remove casts.

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

10 years ago2014-06-03 Teresa Johnson <tejohnson@google.com>
tejohnson [Tue, 3 Jun 2014 14:12:51 +0000 (14:12 +0000)]
2014-06-03  Teresa Johnson  <tejohnson@google.com>

* tree-sra.c (modify_function): Record caller nodes after rebuild.

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

10 years ago PR c++/60848
jason [Tue, 3 Jun 2014 14:11:10 +0000 (14:11 +0000)]
PR c++/60848
* call.c (is_std_init_list): Check CLASSTYPE_TEMPLATE_INFO.

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

10 years ago PR c++/61020
jason [Tue, 3 Jun 2014 11:56:58 +0000 (11:56 +0000)]
PR c++/61020
* varpool.c (ctor_for_folding): Handle uninitialized vtables.

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

10 years agoDetect EXT patterns to vec_perm_const, use for EXT intrinsics.
alalaw01 [Tue, 3 Jun 2014 11:56:24 +0000 (11:56 +0000)]
Detect EXT patterns to vec_perm_const, use for EXT intrinsics.
(part 2, fix ICE at -O0)

* config/aarch64/aarch64.c (aarch64_evpc_ext): allow and handle
location == 0.

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

10 years agoRecognize shuffle patterns for REV instructions on AArch64, rewrite intrinsics.
alalaw01 [Tue, 3 Jun 2014 11:28:55 +0000 (11:28 +0000)]
Recognize shuffle patterns for REV instructions on AArch64, rewrite intrinsics.

        * config/aarch64/aarch64-simd.md (aarch64_rev<REVERSE:rev-op><mode>):
        New pattern.
        * config/aarch64/aarch64.c (aarch64_evpc_rev): New function.
        (aarch64_expand_vec_perm_const_1): Add call to aarch64_evpc_rev.
        * config/aarch64/iterators.md (REVERSE): New iterator.
        (UNSPEC_REV64, UNSPEC_REV32, UNSPEC_REV16): New enum elements.
        (rev_op): New int_attribute.
        * config/aarch64/arm_neon.h (vrev16_p8, vrev16_s8, vrev16_u8,
        vrev16q_p8, vrev16q_s8, vrev16q_u8, vrev32_p8, vrev32_p16, vrev32_s8,
        vrev32_s16, vrev32_u8, vrev32_u16, vrev32q_p8, vrev32q_p16, vrev32q_s8,
        vrev32q_s16, vrev32q_u8, vrev32q_u16, vrev64_f32, vrev64_p8,
        vrev64_p16, vrev64_s8, vrev64_s16, vrev64_s32, vrev64_u8, vrev64_u16,
        vrev64_u32, vrev64q_f32, vrev64q_p8, vrev64q_p16, vrev64q_s8,
        vrev64q_s16, vrev64q_s32, vrev64q_u8, vrev64q_u16, vrev64q_u32):
        Replace temporary __asm__ with __builtin_shuffle.

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

10 years agoAdd support for MIPS r3 and r5.
abennett [Tue, 3 Jun 2014 11:10:05 +0000 (11:10 +0000)]
Add support for MIPS r3 and r5.

2014-06-03  Andrew Bennett  <andrew.bennett@imgtec.com>

* config/mips/mips-cpus.def: Add mips32r3, mips32r5, mips64r3 and
mips64r5.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.c (mips_compute_frame_info): Changed if statement
to use mips_isa_rev rather than ISA_MIPS32R2.
* config/mips/mips.h (ISA_MIPS32R3): New define.
(ISA_MIPS32R5): New define.
(ISA_MIPS64R3): New define.
(ISA_MIPS64R5): New define.
(TARGET_CPU_CPP_BUILTINS): Added support for ISA_MIPS32R3, ISA_MIPS32R5,
ISA_MIPS64R3 and ISA_MIPS64R5.
(MIPS_ISA_LEVEL_SPEC): Added support for mips32r3, mips32r5, mips64r3
and mips64r5.
(MIPS_ISA_SYNCI_SPEC): Likewise.
(ISA_HAS_64BIT_REGS): Added ISA_MIPS64R3 and ISA_MIPS64R5.
(LINK_SPEC): Added mips32r3 and mips32r5.
* config/mips/t-isa3264 (MULTILIB_MATCHES): Map mips32r3 and mips32r5
to mips32r2; and mips64r3 and mips64r5 to mips64r2.
* config/mips/t-mti-elf (MULTILIB_MATCHES): Likewise.
* config/mips/t-mti-linux (MULTILIB_MATCHES): Likewise.
* config/mips/t-sde (MULTILIB_MATCHES): Likewise.
* config/mips/t-sdemtk (MULTILIB_MATCHES): New define.
* doc/invoke.texi: Document mips32r3, mips32r5, mips64r3 and mips64r5.

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

10 years agoAdd support for the MIPS -mxpa command line option.
abennett [Tue, 3 Jun 2014 10:22:09 +0000 (10:22 +0000)]
Add support for the MIPS -mxpa command line option.

2014-06-03  Andrew Bennett  <andrew.bennett@imgtec.com>

* doc/invoke.texi: Document -mxpa and -mno-xpa MIPS command line
options.
* config/mips/mips.opt (mxpa): New option.
* config/mips/mips.h (ASM_SPEC): Pass mxpa and mno-xpa to the
assembler.

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

10 years ago2014-06-03 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 3 Jun 2014 10:09:20 +0000 (10:09 +0000)]
2014-06-03  Martin Jambor  <mjambor@suse.cz>

PR ipa/61160
* ipa-cp.c (cgraph_edge_brings_value_p): Handle edges leading to
thunks.

testsuite/
* g++.dg/ipa/pr61160-1.C: New test.

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

10 years agoAdd myself to the MAINTAINERS file.
abennett [Tue, 3 Jun 2014 09:37:13 +0000 (09:37 +0000)]
Add myself to the MAINTAINERS file.

2014-06-03  Andrew Bennett  <andrew.bennett@imgtec.com>

* MAINTAINERS (Write After Approval): Add myself.

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

10 years ago2014-06-03 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Tue, 3 Jun 2014 09:29:06 +0000 (09:29 +0000)]
2014-06-03  Thomas Preud'homme  <thomas.preudhomme@arm.com>

PR tree-optimization/61328
* tree-ssa-math-opts.c (init_symbolic_number): Extract symbolic number
        initialization from find_bswap_or_nop_1.
        (find_bswap_or_nop_1): Test return value of find_bswap_or_nop_1 stored
        in source_expr2 before using the size value the function sets. Also
        make use of init_symbolic_number () in both the old place and
        find_bswap_or_nop_load () to avoid reading uninitialized memory when
        doing recursion in the GIMPLE_BINARY_RHS case.

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

10 years ago2014-06-03 Richard Biener <rguenther@suse.de>
rguenth [Tue, 3 Jun 2014 08:48:28 +0000 (08:48 +0000)]
2014-06-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61383
* tree-ssa-ifcombine.c (bb_no_side_effects_p): Make sure
stmts can't trap.

* gcc.dg/torture/pr61383-1.c: New testcase.

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

10 years agogcc/
rsandifo [Tue, 3 Jun 2014 07:27:13 +0000 (07:27 +0000)]
gcc/
* defaults.h (USE_MD_CONSTRAINTS, EXTRA_MEMORY_CONSTRAINT)
(EXTRA_ADDRESS_CONSTRAINT, DEFAULT_CONSTRAINT_LEN, CONSTRAINT_LEN)
(CONST_OK_FOR_CONSTRAINT_P, CONST_DOUBLE_OK_FOR_LETTER_P)
(REG_CLASS_FROM_CONSTRAINT, EXTRA_CONSTRAINT_STR): Delete definitions
in this file.
(REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P)
(CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Move poising to...
* system.h: ...here and make it unconditional.
* target.def (conditional_register_usage): Mention
define_register_constraint instead of old-style constraint macros.
* doc/tm.texi.in: Remove documentation for old-style constraint macros.
* doc/tm.texi: Regenerate.
* genoutput.c: Remove USE_MD_CONSTRAINTS conditions and all code
protected by !USE_MD_CONSTRAINTS.
* config/frv/frv.md: Remove quote from old version of documentation.
* config/frv/frv.c (frv_conditional_register_usage): Likewise.
* config/m32r/m32r.c (easy_di_const, easy_df_const): Avoid mentioning
CONST_DOUBLE_OK_FOR_LETTER.
* config/sh/constraints.md: Likewise EXTRA_CONSTRAINT.

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

10 years ago PR c++/61046
jason [Tue, 3 Jun 2014 04:57:39 +0000 (04:57 +0000)]
PR c++/61046
* decl.c (reshape_init_class): Handle un-folded
constant-expressions.

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

10 years ago PR c++/61134
jason [Tue, 3 Jun 2014 04:57:32 +0000 (04:57 +0000)]
PR c++/61134
* pt.c (pack_deducible_p): Handle canonicalization.

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

10 years ago2014-06-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 3 Jun 2014 02:31:01 +0000 (02:31 +0000)]
2014-06-02  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (tsubst_function_type): Initialize arg_types.

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

10 years agoDaily bump.
gccadmin [Tue, 3 Jun 2014 00:17:07 +0000 (00:17 +0000)]
Daily bump.

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

10 years agoFix formating in my last changelog entry.
pinskia [Tue, 3 Jun 2014 00:06:41 +0000 (00:06 +0000)]
Fix formating in my last changelog entry.

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

10 years ago* gcc.target/powerpc/vsxcopy.c (dg-options): Add -mvsx.
schwab [Mon, 2 Jun 2014 22:38:30 +0000 (22:38 +0000)]
* gcc.target/powerpc/vsxcopy.c (dg-options): Add -mvsx.

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

10 years ago PR debug/57519
jason [Mon, 2 Jun 2014 22:10:57 +0000 (22:10 +0000)]
    PR debug/57519
        * class.c (handle_using_decl): Pass the correct scope to
        cp_emit_debug_info_for_using.

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

10 years ago2014-06-02 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 2 Jun 2014 21:24:41 +0000 (21:24 +0000)]
2014-06-02  Andrew Pinski  <apinski@cavium.com>

* config/aarch64/aarch64-linux.h (GLIBC_DYNAMIC_LINKER):
/lib/ld-linux32-aarch64.so.1 is used for ILP32.
(LINUX_TARGET_LINK_SPEC): Update linker script for ILP32.
file whose name depends on -mabi= and -mbig-endian.
* config/aarch64/t-aarch64-linux (MULTILIB_OSDIRNAMES):
Handle LP64 better and handle ilp32 too.
(MULTILIB_OPTIONS): Delete.
(MULTILIB_DIRNAMES): Delete.

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

10 years ago PR c++/59483
jason [Mon, 2 Jun 2014 20:47:55 +0000 (20:47 +0000)]
PR c++/59483
PR c++/61148
* search.c (accessible_p): Use current_nonlambda_class_type.
* semantics.c (check_accessibility_of_qualified_id): Likewise.

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

10 years ago * expr.h: Remove prototypes of functions defined in builtins.c.
amacleod [Mon, 2 Jun 2014 20:13:44 +0000 (20:13 +0000)]
* expr.h: Remove prototypes of functions defined in builtins.c.
* tree.h: (build_call_expr_*, build_string_literal): Add prototypes.
Remove prototypes of functions defined in builtins.c.
* builtins.h: Update prototype list to include all exported functions.
* builtins.c: (default_libc_has_function, gnu_libc_has_function,
no_c99_libc_has_function): Move to targhooks.c
(build_string_literal, build_call_expr_loc_array,
build_call_expr_loc_vec, build_call_expr_loc, build_call_expr): Move
to tree.c.
(expand_builtin_object_size, fold_builtin_object_size): Make static.
* targhooks.c (default_libc_has_function, gnu_libc_has_function,
no_c99_libc_has_function): Relocate from builtins.c.
* tree.c: Include builtins.h.
(build_call_expr_loc_array, build_call_expr_loc_vec,
build_call_expr_loc, build_call_expr, build_string_literal): Relocate
from builtins.c.
* fold-const.h (fold_fma): Move prototype to builtins.h.
* realmpfr.h (do_mpc_arg2): Move prototype to builtins.h.

* fortran/trans.c (trans_runtime_error_vararg): Call
fold_build_call_array_loc instead of fold_builtin_call_array.

* asan.c: Include builtins.h.
* cfgexpand.c: Likewise.
* convert.c: Likewise.
* emit-rtl.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* fold-const.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimplify.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* lto-streamer-out.c: Likewise.
* stmt.c: Likewise.
* tree-inline.c: Likewise.
* tree-object-size.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.

c
* c-decl.c: Include builtins.h.
* c-parser.c: Likewise.

cp
* decl.c: Include builtins.h.
* semantics.c: Likewise.

go
* go-gcc.cc: Include builtins.h.

lto
* lto-symtab.c: Include builtins.h.

config
* aarch64/aarch64.c: Include builtins.h.
* alpha/alpha.c: Likewise.
* arc/arc.c: Likewise.
* arm/arm.c: Likewise.
* avr/avr.c: Likewise.
* bfin/bfin.c: Likewise.
* c6x/c6x.c: Likewise.
* cr16/cr16.c: Likewise.
* cris/cris.c: Likewise.
* epiphany/epiphany.c: Likewise.
* fr30/fr30.c: Likewise.
* frv/frv.c: Likewise.
* h8300/h8300.c: Likewise.
* i386/i386.c: Likewise.
* i386/winnt.c: Likewise.
* ia64/ia64.c: Likewise.
* iq2000/iq2000.c: Likewise.
* lm32/lm32.c: Likewise.
* m32c/m32c.c: Likewise.
* m32r/m32r.c: Likewise.
* m68k/m68k.c: Likewise.
* mcore/mcore.c: Likewise.
* mep/mep.c: Likewise.
* microblaze/microblaze.c: Likewise.
* mips/mips.c: Likewise.
* mmix/mmix.c: Likewise.
* mn10300/mn10300.c: Likewise.
* moxie/moxie.c: Likewise.
* msp430/msp430.c: Likewise.
* nds32/nds32.c: Likewise.
* pa/pa.c: Likewise.
* pdp11/pdp11.c: Likewise.
* picochip/picochip.c: Likewise.
* rl78/rl78.c: Likewise.
* rs6000/rs6000.c: Likewise.
* rx/rx.c: Likewise.
* s390/s390.c: Likewise.
* score/score.c: Likewise.
* sh/sh.c: Likewise.
* sparc/sparc.c: Likewise.
* spu/spu.c: Likewise.
* stormy16/stormy16.c: Likewise.
* tilegx/tilegx.c: Likewise.
* tilepro/tilepro.c: Likewise.
* v850/v850.c: Likewise.
* vax/vax.c: Likewise.
* xtensa/xtensa.c: Likewise.

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

10 years ago * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
redi [Mon, 2 Jun 2014 19:36:14 +0000 (19:36 +0000)]
* include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
members to avoid wasted space when not using a cache.
(__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
* include/bits/regex_compiler.tcc
(__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
search on set.
* include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
New enumeration type to indicate match mode.
(__detail::_Executor::_State_info): New type holding members only
needed in BFS-mode. Replace unique_ptr<vector<bool>> with
unique_ptr<bool[]>.
(__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
Replace template parameter with run-time function parameter.
(__detail::_Executor::_M_main): Likewise. Dispatch to ...
(__detail::_Executor::_M_main_dispatch): New overloaded functions to
implement DFS and BFS mode.
* include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
Split implementation into ...
(__detail::_Executor::_M_main_dispatch): New overloaded functions.
(__detail::_Executor::_M_lookahead): Create nested executor on stack.
(__detail::_Executor::_M_rep_once_more): Pass match mode as function
argument instead of template argument.
(__detail::_Executor::_M_dfs): Likewise.
* include/bits/regex_scanner.tcc: Fix typos in comments.
* testsuite/performance/28_regex/range.cc: New.

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

10 years ago PR rtl-optimization/61094
law [Mon, 2 Jun 2014 19:12:08 +0000 (19:12 +0000)]
PR rtl-optimization/61094
* ree.c (combine_reaching_defs): Do not reextend an insn if it
was marked as do_no_reextend.  If a copy is needed to eliminate
an extension, then mark it as do_not_reextend.

PR rtl-optimization/61094
* g++.dg/pr61094: New test.

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

10 years ago[AArch64] Remove ISB after FPCR write.
mshawcroft [Mon, 2 Jun 2014 16:40:06 +0000 (16:40 +0000)]
[AArch64] Remove ISB after FPCR write.

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

10 years agoPR target/61336
rth [Mon, 2 Jun 2014 16:27:41 +0000 (16:27 +0000)]
PR target/61336

        * config/alpha/alpha.c (print_operand_address): Allow symbolic
        addresses inside asms.  Use output_operand_lossage instead of
        gcc_unreachable.

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

10 years ago * include/std/condition_variable (condition_variable_any::_Unlock): Do
redi [Mon, 2 Jun 2014 15:45:09 +0000 (15:45 +0000)]
* include/std/condition_variable (condition_variable_any::_Unlock): Do
not swallow __forced_unwind.
* include/std/future (__future_base::_Task_setter): Likewise.
(__future_base::_Async_state_impl): Turn __forced_unwind into broken
promise and rethrow.
* include/std/mutex (try_lock): Likewise.
* testsuite/30_threads/async/forced_unwind.cc: New.
* testsuite/30_threads/packaged_task/forced_unwind.cc: New.

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

10 years ago2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
redi [Mon, 2 Jun 2014 13:55:14 +0000 (13:55 +0000)]
2014-06-02  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
    Jonathan Wakely  <jwakely@redhat.com>

* libstdc++-v3/include/std/type_traits (__strictest_alignment): New
helper struct.
(aligned_union): New struct (C++11).
(aligned_union_t): New type alias (C++14).
* doc/xml/manual/status_cxx2011.xml: Update.
* libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.

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

10 years ago * gcc.target/i386/xop-rotate1-vector.c (dg-options): Add -mno-avx2.
uros [Mon, 2 Jun 2014 13:40:49 +0000 (13:40 +0000)]
* gcc.target/i386/xop-rotate1-vector.c (dg-options): Add -mno-avx2.
* gcc.target/i386/xop-rotate2-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-rotate3-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-imul32widen-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-imul64-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift1-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift2-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift3-vector.c (dg-options): Ditto.

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

10 years ago PR target/61239
uros [Mon, 2 Jun 2014 13:22:34 +0000 (13:22 +0000)]
PR target/61239
* config/i386/i386.c (ix86_expand_vec_perm) [case V32QImode]: Use
GEN_INT (-128) instead of GEN_INT (128) to set MSB of QImode constant.

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

10 years agoFix ICE in aarch64_float_const_representable_p
vries [Mon, 2 Jun 2014 13:13:43 +0000 (13:13 +0000)]
Fix ICE in aarch64_float_const_representable_p

2014-06-02  Tom de Vries  <tom@codesourcery.com>

* config/aarch64/aarch64.c (aarch64_float_const_representable_p): Handle
case that x has VOIDmode.

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

10 years agoFix a decl to match the calls to it.
bernds [Mon, 2 Jun 2014 12:06:20 +0000 (12:06 +0000)]
Fix a decl to match the calls to it.

* trans-decl.c (gfc_build_builtin_function_decls): Correct number of
arguments to caf_init.

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

10 years agoDelete a copy that looks like a relic from obstack times.
bernds [Mon, 2 Jun 2014 12:06:11 +0000 (12:06 +0000)]
Delete a copy that looks like a relic from obstack times.

* varasm.c (copy_constant): Delete function.
(build_constant_desc): Don't call it.

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

10 years agoFix PR target/61154
ramana [Mon, 2 Jun 2014 08:22:30 +0000 (08:22 +0000)]
Fix PR target/61154

2014-06-02  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/61154
* config/arm/arm.h (TARGET_SUPPORTS_WIDE_INT): Define.
* config/arm/arm.md (mov64 splitter): Replace const_double_operand
with immediate_operand.

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

10 years ago2014-06-02 Richard Biener <rguenther@suse.de>
rguenth [Mon, 2 Jun 2014 08:07:23 +0000 (08:07 +0000)]
2014-06-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61346
* gcc.dg/torture/pr61346.c: New testcase.

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

10 years ago* config/ia64/ia64.c
schwab [Mon, 2 Jun 2014 07:53:26 +0000 (07:53 +0000)]
* config/ia64/ia64.c
(ia64_first_cycle_multipass_dfa_lookahead_guard): Check
pending_data_specs first.

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

10 years ago2014-06-02 Richard Biener <rguenther@suse.de>
rguenth [Mon, 2 Jun 2014 07:45:15 +0000 (07:45 +0000)]
2014-06-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61378
* tree-ssa-sccvn.c (vn_reference_lookup_3): Initialize
valueized_anything.

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

10 years agoDaily bump.
gccadmin [Mon, 2 Jun 2014 00:17:19 +0000 (00:17 +0000)]
Daily bump.

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

10 years ago * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
redi [Sun, 1 Jun 2014 22:35:42 +0000 (22:35 +0000)]
* include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
(__uses_allocator_arg): Remove unused type.
(__uses_alloc0): Turn into a trivial type.
(__uses_alloc): Add missing template parameter in primary template.
(__uses_alloc_impl): Rename to __uses_alloc_t.

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

10 years ago * gcc.target/i386/sibcall-2.c: Xfail dg-final scan-assembler-not,
uros [Sun, 1 Jun 2014 21:14:02 +0000 (21:14 +0000)]
* gcc.target/i386/sibcall-2.c: Xfail dg-final scan-assembler-not,
not compilation.
* gcc.target/i386/sibcall-4.c: Ditto.
* gcc.target/i386/fuse-caller-save.c: Add -mregparm=1 for ia32 target.

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

10 years ago * config/i386/constraints.md (Bw): Rename from 'w'.
uros [Sun, 1 Jun 2014 20:53:18 +0000 (20:53 +0000)]
* config/i386/constraints.md (Bw): Rename from 'w'.
(Bz): Rename from 'z'.
* config/i386/i386.md: Change 'w' to 'Bw' and 'z' to 'Bz' globally.

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

10 years ago * gcc.target/i386/sibcall-2.c (dg-final): Properly escape '[' and ']'
uros [Sun, 1 Jun 2014 20:37:41 +0000 (20:37 +0000)]
* gcc.target/i386/sibcall-2.c (dg-final): Properly escape '[' and ']'
in scan-assembler-not string.
* gcc.target/i386/sibcall-3.c (dg-final): Ditto.
* gcc.target/i386/sibcall-4.c (dg-final): Ditto.
* gcc.target/i386/sibcall-6.c (dg-final): Ditto.

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

10 years ago * Add missing ChangeLog entry.
uros [Sun, 1 Jun 2014 19:48:53 +0000 (19:48 +0000)]
* Add missing ChangeLog entry.

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

10 years ago2014-06-01 Ray Donnelly <mingw.android@gmail.com>
ktietz [Sun, 1 Jun 2014 19:09:59 +0000 (19:09 +0000)]
2014-06-01  Ray Donnelly  <mingw.android@gmail.com>

        * pex-win32.c (argv_to_cmdline): Don't quote
        args unnecessarily

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

10 years ago * g++.dg/pr60969.C (dg-do compile): Change ilp32 target to ia32.
uros [Sun, 1 Jun 2014 18:12:00 +0000 (18:12 +0000)]
* g++.dg/pr60969.C (dg-do compile): Change ilp32 target to ia32.

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

10 years ago PR libstdc++/61374
redi [Sun, 1 Jun 2014 17:23:41 +0000 (17:23 +0000)]
PR libstdc++/61374
* include/experimental/string_view (operator basic_string): Correct
order of arguments.
(to_string): Replace with member function.
Add inline specifiers. Remove unused header. Remove _S_empty_rep and
allow _M_str to be null.
* testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
default constructor semantics.
* testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
copyright dates. Remove unused header.
* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/char/1.cc:
Fix copyright dates. Adjust to new default constructor semantics.
* testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/to_string/1.cc: New.

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

10 years ago PR target/61377
ktietz [Sun, 1 Jun 2014 10:36:55 +0000 (10:36 +0000)]
PR target/61377
* constrains.md (define_constrain): New 'Bs' constraint.
* i386.md (sibcall_insn_operand): Use Bs instead of m constraint.

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

10 years ago PR target/61377
ktietz [Sun, 1 Jun 2014 10:35:19 +0000 (10:35 +0000)]
PR target/61377
* gcc.target/i386/sibcall-6.c: New test.

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

10 years agoDaily bump.
gccadmin [Sun, 1 Jun 2014 00:17:25 +0000 (00:17 +0000)]
Daily bump.

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

10 years agoSummary: m68k: add missing early clobber in beq0_di, bne0_di patterns
schwab [Sat, 31 May 2014 12:08:25 +0000 (12:08 +0000)]
Summary: m68k: add missing early clobber in beq0_di, bne0_di patterns

* config/m68k/m68k.md (beq0_di, bne0_di): Make the "o" constraint
a separate alternative where the scratch operand 2 is marked as
early clobber.

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

10 years agogcc/
kugan [Sat, 31 May 2014 09:27:52 +0000 (09:27 +0000)]
gcc/

2014-05-31  Kugan Vivekanandarajah  <kuganv@linaro.org>

* config/arm/arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
(arm_builtins) : Add ARM_BUILTIN_GET_FPSCR and ARM_BUILTIN_SET_FPSCR.
(bdesc_2arg) : Add description for builtins __builtins_arm_set_fpscr
and __builtins_arm_get_fpscr.
(arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and
__builtins_arm_get_fpscr.
(arm_expand_builtin) : Expand builtins __builtins_arm_set_fpscr and
__builtins_arm_ldfpscr.
(arm_atomic_assign_expand_fenv): New function.
* config/arm/vfp.md (set_fpscr): New pattern.
(get_fpscr) : Likewise.
* config/arm/unspecs.md (unspecv): Add VUNSPEC_GET_FPSCR and
VUNSPEC_SET_FPSCR.
* doc/extend.texi (AARCH64 Built-in Functions) : Document
__builtins_arm_set_fpscr, __builtins_arm_get_fpscr.

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

10 years ago/cp
paolo [Sat, 31 May 2014 08:51:20 +0000 (08:51 +0000)]
/cp
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1227
PR c++/57543
* cp-tree.h (TYPE_HAS_LATE_RETURN_TYPE): Add.
* pt.c (tsubst_function_type): Inject the this parameter; do the
substitutions in the order mandated by the DR.
(copy_default_args_to_explicit_spec): Copy TYPE_HAS_LATE_RETURN_TYPE.
* decl.c (grokdeclarator): Maybe set TYPE_HAS_LATE_RETURN_TYPE.
(static_fn_type): Copy it.
* decl2.c (build_memfn_type, change_return_type,
cp_reconstruct_complex_type): Likewise.
* parser.c (cp_parser_lambda_declarator_opt): Likewise.
* tree.c (strip_typedefs): Likewise.
* typeck.c (merge_types): Likewise.

/testsuite
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1227
PR c++/57543
* g++.dg/cpp0x/pr57543-1.C: New.
* g++.dg/cpp0x/pr57543-2.C: Likewise.
* g++.dg/cpp0x/pr57543-3.C: Likewise.
* g++.dg/cpp0x/decltype59.C: Likewise.

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

10 years agoDaily bump.
gccadmin [Sat, 31 May 2014 00:17:15 +0000 (00:17 +0000)]
Daily bump.

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

10 years agoAdd missing closing brace
vries [Fri, 30 May 2014 22:58:46 +0000 (22:58 +0000)]
Add missing closing brace

2014-05-31  Tom de Vries  <tom@codesourcery.com>

* gcc.target/i386/sibcall-4.c: Add missing closing brace.

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

10 years ago * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
redi [Fri, 30 May 2014 19:26:15 +0000 (19:26 +0000)]
* doc/xml/manual/appendix_contributing.xml (list.copyright): Add
Paolo's address too.

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

10 years ago PR c++/56947
jason [Fri, 30 May 2014 18:55:56 +0000 (18:55 +0000)]
PR c++/56947
* pt.c (instantiate_decl): Check that defer_ok is not set for
local class members.

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

10 years ago * lib/target-libpath.exp (set_gcc_exec_prefix_env_var,
jakub [Fri, 30 May 2014 18:40:20 +0000 (18:40 +0000)]
* lib/target-libpath.exp (set_gcc_exec_prefix_env_var,
restore_gcc_exec_prefix_env_var): New procedures.
(set_ld_library_path_env_vars,
restore_ld_library_path_env_vars): Use them.
* lib/c-compat.exp: Load target-libpath.exp.
(compat-use-alt-compiler): Call restore_gcc_exec_prefix_env_var.
(compat-use-tst-compiler): Call set_gcc_exec_prefix_env_var.
* g++.dg/compat/compat.exp (compat-use-alt-compiler): Call
restore_gcc_exec_prefix_env_var.
* g++.dg/compat/struct-layout-1.exp (compat-use-alt-compiler):
Likewise.

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

10 years ago * asan.c (report_error_func): Add SLOW_P argument, use
jakub [Fri, 30 May 2014 18:37:59 +0000 (18:37 +0000)]
* asan.c (report_error_func): Add SLOW_P argument, use
BUILT_IN_ASAN_*_N if set.
(build_check_stmt): Likewise.
(instrument_derefs): If T has insufficient alignment,
force same handling as for odd sizes.

* c-c++-common/asan/misalign-1.c: New test.
* c-c++-common/asan/misalign-2.c: New test.

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

10 years ago * sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N,
jakub [Fri, 30 May 2014 18:37:05 +0000 (18:37 +0000)]
* sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N,
BUILT_IN_ASAN_REPORT_STORE_N): New.
* asan.c (struct asan_mem_ref): Change access_size type to
HOST_WIDE_INT.
(asan_mem_ref_init, asan_mem_ref_new, get_mem_refs_of_builtin_call,
update_mem_ref_hash_table): Likewise.
(asan_mem_ref_hasher::hash): Hash in a HWI.
(report_error_func): Change size_in_bytes argument to HWI.
Use *_N builtins if size_in_bytes is larger than 16 or not power of
two.
(build_shadow_mem_access): New function.
(build_check_stmt): Use it.  Change size_in_bytes argument to HWI.
Handle size_in_bytes not power of two or larger than 16.
(instrument_derefs): Don't give up if size_in_bytes is not
power of two or is larger than 16.

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

10 years ago * g++.dg/asan/asan_test.C: Add -std=c++11 and
jakub [Fri, 30 May 2014 18:36:24 +0000 (18:36 +0000)]
* g++.dg/asan/asan_test.C: Add -std=c++11 and
-DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options, remove
-DASAN_USE_DEJAGNU_GTEST=1.
* g++.dg/asan/asan_mem_test.cc: Updated from upstream
r209283.
* g++.dg/asan/asan_oob_test.cc: Likewise.
* g++.dg/asan/sanitizer_test_utils.h: Likewise.
* g++.dg/asan/asan_str_test.cc: Likewise.
* g++.dg/asan/asan_test_utils.h: Likewise.
* g++.dg/asan/sanitizer_test_config.h: Likewise.
* g++.dg/asan/asan_test.cc: Likewise.  Allow size 12
for long double.
* g++.dg/asan/sanitizer_pthread_wrappers.h: New file.
Imported from upstream r209283.
* g++.dg/asan/asan_test_config.h: Likewise.

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

10 years ago PR target/60104
ktietz [Fri, 30 May 2014 18:00:11 +0000 (18:00 +0000)]
PR target/60104
* config/i386/i386.c (x86_output_mi_thunk): Add memory case
for sibling-tail-calls.
* config/i386/i386.md (sibcall_insn_operand): Add memory-constrain
to its use.
* config/i386/predicates.md (sibcall_memory_operand): New predicate.
(sibcall_insn_operand): Add check for sibcall_memory_operand.

PR target/60104
* gcc.target/i386/sibcall-1.c: New test.
* gcc.target/i386/sibcall-2.c: New test.
* gcc.target/i386/sibcall-3.c: New test.
* gcc.target/i386/sibcall-4.c: New test.

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

10 years ago PR libstdc++/61011
redi [Fri, 30 May 2014 17:16:14 +0000 (17:16 +0000)]
PR libstdc++/61011
* configure.ac (--disable-libstdcxx): Set noconfigdirs correctly.
Disable libcilkrts, libitm, libsanitizer when not building libstdc++.
* configure: Regenerate.

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

10 years ago * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
redi [Fri, 30 May 2014 16:58:58 +0000 (16:58 +0000)]
* doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
Benjamin's old email address.

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

10 years ago * config/avr/avr-mcus.def: Change ATA6289 ISA to AVR4
denisc [Fri, 30 May 2014 16:36:05 +0000 (16:36 +0000)]
* config/avr/avr-mcus.def: Change ATA6289 ISA to AVR4
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

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

10 years ago PR c++/60992
jason [Fri, 30 May 2014 15:09:40 +0000 (15:09 +0000)]
PR c++/60992
* pt.c (tsubst_init): Split out from...
(tsubst_expr) [DECL_EXPR]: Here.
(tsubst_copy) [VAR_DECL]: Use it.
* semantics.c (finish_id_expression): Return the decl for static/const.

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

10 years agoruntime: Use _mm_pause rather than __builtin_ia32_pause.
ian [Fri, 30 May 2014 13:53:58 +0000 (13:53 +0000)]
runtime: Use _mm_pause rather than __builtin_ia32_pause.

Based on a patch from Peter Collingbourne.

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

10 years ago * sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream
jakub [Fri, 30 May 2014 13:48:22 +0000 (13:48 +0000)]
* sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream
r209879.
* sanitizer_common/sanitizer_common.h: Likewise.
* asan/asan_mapping.h: Likewise.
* asan/asan_linux.cc: Likewise.
* tsan/tsan_mman.cc: Cherry pick upstream r209744.
* sanitizer_common/sanitizer_allocator.h: Likewise.

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

10 years agogcc/:
ian [Fri, 30 May 2014 13:11:05 +0000 (13:11 +0000)]
gcc/:
* config/i386/xmmintrin.h (_mm_pause): Move out of scope of pragma
target("sse").
testsuite/:
* gcc.target/i386/pause-2.c: New test.

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

10 years ago-fuse-caller-save - Enable for i386
vries [Fri, 30 May 2014 11:39:49 +0000 (11:39 +0000)]
-fuse-caller-save - Enable for i386

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* config/i386/i386.c (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS):
Redefine as true.

* gcc.target/i386/fuse-caller-save.c: New test.
* gcc.dg/ira-shrinkwrap-prep-1.c: Run with -fno-use-caller-save.
* gcc.dg/ira-shrinkwrap-prep-2.c: Same.

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

10 years ago * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
redi [Fri, 30 May 2014 11:11:15 +0000 (11:11 +0000)]
* testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
work with previous versions of Tcl.

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

10 years ago * generate_libstdcxx_web_docs: New script.
redi [Fri, 30 May 2014 11:11:10 +0000 (11:11 +0000)]
* generate_libstdcxx_web_docs: New script.

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

10 years agoAdd execution tests of ARM REV intrinsics.
alalaw01 [Fri, 30 May 2014 09:49:49 +0000 (09:49 +0000)]
Add execution tests of ARM REV intrinsics.

gcc.target/arm/simd/vrev16p8_1.c: New file.
gcc.target/arm/simd/vrev16qp8_1.c: New file.
gcc.target/arm/simd/vrev16qs8_1.c: New file.
gcc.target/arm/simd/vrev16qu8_1.c: New file.
gcc.target/arm/simd/vrev16s8_1.c: New file.
gcc.target/arm/simd/vrev16u8_1.c: New file.
gcc.target/arm/simd/vrev32p16_1.c: New file.
gcc.target/arm/simd/vrev32p8_1.c: New file.
gcc.target/arm/simd/vrev32qp16_1.c: New file.
gcc.target/arm/simd/vrev32qp8_1.c: New file.
gcc.target/arm/simd/vrev32qs16_1.c: New file.
gcc.target/arm/simd/vrev32qs8_1.c: New file.
gcc.target/arm/simd/vrev32qu16_1.c: New file.
gcc.target/arm/simd/vrev32qu8_1.c: New file.
gcc.target/arm/simd/vrev32s16_1.c: New file.
gcc.target/arm/simd/vrev32s8_1.c: New file.
gcc.target/arm/simd/vrev32u16_1.c: New file.
gcc.target/arm/simd/vrev32u8_1.c: New file.
gcc.target/arm/simd/vrev64f32_1.c: New file.
gcc.target/arm/simd/vrev64p16_1.c: New file.
gcc.target/arm/simd/vrev64p8_1.c: New file.
gcc.target/arm/simd/vrev64qf32_1.c: New file.
gcc.target/arm/simd/vrev64qp16_1.c: New file.
gcc.target/arm/simd/vrev64qp8_1.c: New file.
gcc.target/arm/simd/vrev64qs16_1.c: New file.
gcc.target/arm/simd/vrev64qs32_1.c: New file.
gcc.target/arm/simd/vrev64qs8_1.c: New file.
gcc.target/arm/simd/vrev64qu16_1.c: New file.
gcc.target/arm/simd/vrev64qu32_1.c: New file.
gcc.target/arm/simd/vrev64qu8_1.c: New file.
gcc.target/arm/simd/vrev64s16_1.c: New file.
gcc.target/arm/simd/vrev64s32_1.c: New file.
gcc.target/arm/simd/vrev64s8_1.c: New file.
gcc.target/arm/simd/vrev64u16_1.c: New file.
gcc.target/arm/simd/vrev64u32_1.c: New file.
gcc.target/arm/simd/vrev64u8_1.c: New file.

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

10 years ago-fuse-caller-save - Support in lra
vries [Fri, 30 May 2014 08:43:05 +0000 (08:43 +0000)]
-fuse-caller-save - Support in lra

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
* lra.c (initialize_lra_reg_info_element): Add init of
actual_call_used_reg_set field.
(lra): Call lra_create_live_ranges before lra_inheritance for
-fuse-caller-save.
* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
-fuse-caller-save.
* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
instead of call_used_reg_set for -fuse-caller-save.
* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

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

10 years ago[ARM] Use mov_imm type for movw operations consistently
ktkachov [Fri, 30 May 2014 08:31:38 +0000 (08:31 +0000)]
[ARM] Use mov_imm type for movw operations consistently

* config/arm/thumb2.md (*thumb2_movhi_insn): Set type of movw
to mov_imm.
* config/arm/vfp.md (*thumb2_movsi_vfp): Likewise.

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

10 years agogcc/
rsandifo [Fri, 30 May 2014 07:35:47 +0000 (07:35 +0000)]
gcc/
* ira.c (ira_get_dup_out_num): Check for output operands at
the start of the loop.  Handle cases where an included alternative
follows an excluded one.

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

10 years agoDaily bump.
gccadmin [Fri, 30 May 2014 00:17:10 +0000 (00:17 +0000)]
Daily bump.

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

10 years ago PR debug/61352
mrs [Thu, 29 May 2014 23:20:39 +0000 (23:20 +0000)]
PR debug/61352
* collect2.c (maybe_run_lto_and_relink): Be sure to always run
post ld passes when lto is used.

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

10 years agoruntime: add the --without-libatomic configure option
ian [Thu, 29 May 2014 20:22:27 +0000 (20:22 +0000)]
runtime: add the --without-libatomic configure option

This adds the --without-libatomic configure option, which is useful for building libgo
with a non-gcc compiler.

It disables libgo's dependency on libatomic. This
is useful for platforms where it is known that the libatomic runtime
functions are not required, or where the compiler automatically
provides an implementation of them.

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

10 years ago2014-05-29 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 29 May 2014 17:37:23 +0000 (17:37 +0000)]
2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* lra-constraints.c (process_address): Rename to
process_address_1.
(process_address): New function.

2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* gcc.target/aarch64/pr61325.c: New.

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

10 years agoAdd execution tests of ARM EXT intrinsics
alalaw01 [Thu, 29 May 2014 17:24:34 +0000 (17:24 +0000)]
Add execution tests of ARM EXT intrinsics

gcc.target/arm/simd/vextQf32_1.c: New file.
gcc.target/arm/simd/vextQp16_1.c: New file.
gcc.target/arm/simd/vextQp8_1.c: New file.
gcc.target/arm/simd/vextQs16_1.c: New file.
gcc.target/arm/simd/vextQs32_1.c: New file.
gcc.target/arm/simd/vextQs64_1.c: New file.
gcc.target/arm/simd/vextQs8_1.c: New file.
gcc.target/arm/simd/vextQu16_1.c: New file.
gcc.target/arm/simd/vextQu32_1.c: New file.
gcc.target/arm/simd/vextQu64_1.c: New file.
gcc.target/arm/simd/vextQu8_1.c: New file.
gcc.target/arm/simd/vextQp64_1.c: New file.
gcc.target/arm/simd/vextf32_1.c: New file.
gcc.target/arm/simd/vextp16_1.c: New file.
gcc.target/arm/simd/vextp8_1.c: New file.
gcc.target/arm/simd/vexts16_1.c: New file.
gcc.target/arm/simd/vexts32_1.c: New file.
gcc.target/arm/simd/vexts64_1.c: New file.
gcc.target/arm/simd/vexts8_1.c: New file.
gcc.target/arm/simd/vextu16_1.c: New file.
gcc.target/arm/simd/vextu32_1.c: New file.
gcc.target/arm/simd/vextu64_1.c: New file.
gcc.target/arm/simd/vextu8_1.c: New file.
gcc.target/arm/simd/vextp64_1.c: New file.

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

10 years agoDetect EXT patterns to vec_perm_const, use for EXT intrinsics
alalaw01 [Thu, 29 May 2014 16:57:42 +0000 (16:57 +0000)]
Detect EXT patterns to vec_perm_const, use for EXT intrinsics

        * config/aarch64/aarch64-builtins.c (aarch64_types_binopv_qualifiers,
        TYPES_BINOPV): New static data.
        * config/aarch64/aarch64-simd-builtins.def (im_lane_bound): New builtin.
        * config/aarch64/aarch64-simd.md (aarch64_ext, aarch64_im_lane_boundsi):
        New patterns.
        * config/aarch64/aarch64.c (aarch64_expand_vec_perm_const_1): Match
        patterns for EXT.
        (aarch64_evpc_ext): New function.

        * config/aarch64/iterators.md (UNSPEC_EXT): New enum element.

        * config/aarch64/arm_neon.h (vext_f32, vext_f64, vext_p8, vext_p16,
        vext_s8, vext_s16, vext_s32, vext_s64, vext_u8, vext_u16, vext_u32,
        vext_u64, vextq_f32, vextq_f64, vextq_p8, vextq_p16, vextq_s8,
        vextq_s16, vextq_s32, vextq_s64, vextq_u8, vextq_u16, vextq_u32,
        vextq_u64): Replace __asm with __builtin_shuffle and im_lane_boundsi.

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