platform/upstream/linaro-gcc.git
8 years agoTrivial typo fix in pretty-print.h
dmalcolm [Tue, 8 Sep 2015 19:59:42 +0000 (19:59 +0000)]
Trivial typo fix in pretty-print.h

gcc/ChangeLog:
* pretty-print.h (printer_fn): Fix typo in comment.

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

8 years agoRe: [PATCH] Minor cleanup of const_and_copies stack
law [Tue, 8 Sep 2015 19:54:23 +0000 (19:54 +0000)]
Re: [PATCH] Minor cleanup of const_and_copies stack
        * tree-ssa-scopedtables.h (class const_and_copies): Fix comment typo.

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

8 years agocorrect ChangeLog dates+address
alalaw01 [Tue, 8 Sep 2015 19:44:36 +0000 (19:44 +0000)]
correct ChangeLog dates+address

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

8 years agoARM/AArch64 Testsuite] Add float16 lane_f16_indices tests
alalaw01 [Tue, 8 Sep 2015 19:43:39 +0000 (19:43 +0000)]
ARM/AArch64 Testsuite] Add float16 lane_f16_indices tests

PR target/63870
* gcc.target/aarch64/advsimd-intrinsics/vld2_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vld3_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vld4_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst2_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst3_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst4_lane_f16_indices_1.c: New.
* gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_f16_indices_1.c: New.

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

8 years ago[ARM] Update sourcebuild.texi with testsuite/effective-target hooks
alalaw01 [Tue, 8 Sep 2015 19:38:22 +0000 (19:38 +0000)]
[ARM] Update sourcebuild.texi with testsuite/effective-target hooks

* doc/sourcebuild.texi (arm_neon_fp16): Correct cross-reference.
(arm_neon_fp16_ok): Document adding of -mfp16-format=ieee flag.
(arm_neon_fp16_hw): New.

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

8 years ago[ARM/AArch64 Testsuite]Add test of vcvt{,_high}_i{f32_f16,f16_f32}
alalaw01 [Tue, 8 Sep 2015 19:36:41 +0000 (19:36 +0000)]
[ARM/AArch64 Testsuite]Add test of vcvt{,_high}_i{f32_f16,f16_f32}

* gcc.target/aarch64/advsimd-intrinsics/vcvt_f16.c: New.
* lib/target-supports.exp
(check_effective_target_arm_neon_fp16_hw): New.

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

8 years ago[ARM/AArch64 Testsuite] Add float16 tests to advsimd-intrinsics testsuite
alalaw01 [Tue, 8 Sep 2015 19:34:21 +0000 (19:34 +0000)]
[ARM/AArch64 Testsuite] Add float16 tests to advsimd-intrinsics testsuite

* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp:
Set additional_flags for neon-fp16 if supported, else fallback to neon.

* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
(hfloat16_t): New.
(result, expected, clean_results, DECL_VARIABLE_64BITS_VARIANTS,
DECL_VARIABLE_128BITS_VARIANTS): Add float16x4_t and float16x8_t cases
if supported.
(CHECK_RESULTS): Redefine using CHECK_RESULTS_NAMED.
(CHECK_RESULTS_NAMED): Move body to CHECK_RESULTS_NAMED_NO_FP16;
redefine in terms of CHECK_RESULTS_NAMED_NO_FP16 with float16 variants
when those are supported.
(CHECK_RESULTS_NAMED_NO_FP16, CHECK_RESULTS_NO_FP16): New.
(vdup_n_f16): New.

* gcc.target/aarch64/advsimd-intrinsics/compute-ref-data.h (buffer,
buffer_pad, buffer_dup, buffer_dup_pad): Add float16x4 and float16x8_t
cases if supported.

* gcc.target/aarch64/advsimd-intrinsics/vbsl.c (exec_vbsl):
Use CHECK_RESULTS_NO_FP16 in place of CHECK_RESULTS.
* gcc.target/aarch64/advsimd-intrinsics/vdup-vmov.c (exec_vdup_vmov):
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vdup_lane.c (exec_vdup_lane):
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vext.c (exec_vext): Likewise.

* gcc.target/aarch64/advsimd-intrinsics/vcombine.c (expected):
Add float16x8_t case.
(main, exec_vcombine): test float16x4_t -> float16x8_t, if supported.
* gcc.target/aarch64/advsimd-intrinsics/vcreate.c (expected,
main, exec_vcreate): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vget_high (expected,
 exec_vget_high): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vget_low.c (expected,
exec_vget_low): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vld1.c (expected, exec_vld1):
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vld1_dup.c (expected,
exec_vld1_dup): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c (expected,
exec_vld1_lane): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX.c (expected, exec_vldX):
Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c (expected,
exec_vldX_dup): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c (expected,
exec_vldX_lane): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vset_lane.c (expected,
exec_vset_lane): Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vst1_lane.c (expected,
 exec_vst1_lane): Likewise.

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

8 years ago PR c++/67041
jason [Tue, 8 Sep 2015 19:33:47 +0000 (19:33 +0000)]
PR c++/67041
* pt.c (tsubst_copy_and_build): Handle variables like functions.

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

8 years ago[fold-const.c] Fix bigendian HFmode in native_interpret_real
alalaw01 [Tue, 8 Sep 2015 19:27:30 +0000 (19:27 +0000)]
[fold-const.c] Fix bigendian HFmode in native_interpret_real

* fold-const.c (native_interpret_real): Fix HFmode for bigendian where
UNITS_PER_WORD >= 4.

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

8 years ago[AArch64] Add vcvt(_high)?_f32_f16 intrinsics, with BE RTL fix
alalaw01 [Tue, 8 Sep 2015 19:24:35 +0000 (19:24 +0000)]
[AArch64] Add vcvt(_high)?_f32_f16 intrinsics, with BE RTL fix

gcc/:

* config/aarch64/aarch64-simd.md (aarch64_simd_vec_unpacks_lo_<mode>,
aarch64_simd_vec_unpacks_hi_<mode>): New insn.
(vec_unpacks_lo_v4sf, vec_unpacks_hi_v4sf): Delete insn.
(vec_unpacks_lo_<mode>, vec_unpacks_hi_<mode>): New expand.
(aarch64_float_extend_lo_v2df): Rename to...
(aarch64_float_extend_lo_<Vwide>): this, using VDF and so adding V4SF.

* config/aarch64/aarch64-simd-builtins.def (vec_unpacks_hi): Add v8hf.
(float_extend_lo): Add v4sf.

* config/aarch64/arm_neon.h (vcvt_f32_f16, vcvt_high_f32_f16): New.
* config/aarch64/iterators.md (VQ_HSF): New iterator.
(VWIDE, Vwtype, Vhalftype): Add V8HF, V4SF.
(Vwide): New mode_attr.

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

8 years ago[AArch64] Improve code generation for float16 vector code
alalaw01 [Tue, 8 Sep 2015 19:18:29 +0000 (19:18 +0000)]
[AArch64] Improve code generation for float16 vector code

gcc/:

* config/aarch64/aarch64-simd.md (aarch64_simd_dup<mode>,
aarch64_dup_lane<mode>, aarch64_dup_lane_<vswap_width_name><mode>,
aarch64_simd_vec_set<mode>, vec_set<mode>, vec_perm_const<mode>,
vec_init<mode>, *aarch64_simd_ld1r<mode>, vec_extract<mode>): Add
V4HF and V8HF variants to iterator.

* config/aarch64/aarch64.c (aarch64_evpc_dup): Add V4HF and V8HF cases.

* config/aarch64/iterators.md (VDQF_F16): New.
(VSWAP_WIDTH, vswap_width_name): Add V4HF and V8HF cases.

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

8 years ago[AArch64] vreinterpret(q?), vget_(low|high), vld1(q?)_dup
alalaw01 [Tue, 8 Sep 2015 19:13:29 +0000 (19:13 +0000)]
[AArch64] vreinterpret(q?), vget_(low|high), vld1(q?)_dup

gcc/:

* config/aarch64/arm_neon.h (vreinterpret_p8_f16, vreinterpret_p16_f16,
vreinterpret_f16_f64, vreinterpret_f16_s8, vreinterpret_f16_s16,
vreinterpret_f16_s32, vreinterpret_f16_s64, vreinterpret_f16_f32,
vreinterpret_f16_u8, vreinterpret_f16_u16, vreinterpret_f16_u32,
vreinterpret_f16_u64, vreinterpret_f16_p8, vreinterpret_f16_p16,
vreinterpretq_f16_f64, vreinterpretq_f16_s8, vreinterpretq_f16_s16,
vreinterpretq_f16_s32, vreinterpretq_f16_s64, vreinterpretq_f16_f32,
vreinterpretq_f16_u8, vreinterpretq_f16_u16, vreinterpretq_f16_u32,
vreinterpretq_f16_u64, vreinterpretq_f16_p8, vreinterpretq_f16_p16,
vreinterpret_f32_f16, vreinterpret_f64_f16, vreinterpret_s64_f16,
vreinterpret_u64_f16, vreinterpretq_u64_f16, vreinterpret_s8_f16,
vreinterpret_s16_f16, vreinterpret_s32_f16, vreinterpret_u8_f16,
vreinterpret_u16_f16, vreinterpret_u32_f16, vreinterpretq_p8_f16,
vreinterpretq_p16_f16, vreinterpretq_f32_f16, vreinterpretq_f64_f16,
vreinterpretq_s64_f16, vreinterpretq_s8_f16, vreinterpretq_s16_f16,
vreinterpretq_s32_f16, vreinterpretq_u8_f16, vreinterpretq_u16_f16,
vreinterpretq_u32_f16, vget_low_f16, vget_high_f16, vld1_dup_f16,
vld1q_dup_f16): New.

gcc/testsuite/:

* gcc.target/aarch64/vget_high_1.c: Add float16x8->float16x4 case.
* gcc.target/aarch64/vget_low_1.c: Likewise.

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

8 years ago[AArch64] Implement vcvt_{,high_}f16_f32
alalaw01 [Tue, 8 Sep 2015 19:08:34 +0000 (19:08 +0000)]
[AArch64] Implement vcvt_{,high_}f16_f32

* config/aarch64/aarch64-simd.md (aarch64_float_truncate_lo_v2sf):
Reparameterize to...
(aarch64_float_truncate_lo_<mode>): ...this, for both V2SF and V4HF.
(aarch64_float_truncate_hi_v4sf): Reparameterize to...
(aarch64_float_truncate_hi_<Vdbl>): ...this, for both V4SF and V8HF.

* config/aarch64/aarch64-simd-builtins.def (float_truncate_hi_): Add
v8hf variant.
(float_truncate_lo_): Use BUILTIN_VDF iterator.

* config/aarch64/arm_neon.h (vcvt_f16_f32, vcvt_high_f16_f32): New.

* config/aarch64/iterators.md (VDF, Vdtype): New.
(VWIDE, Vmwtype): Add cases for V4HF and V2SF.

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

8 years ago[AArch64] vld{2,3,4}{,_lane,_dup}, vcombine, vcreate
alalaw01 [Tue, 8 Sep 2015 19:03:53 +0000 (19:03 +0000)]
[AArch64] vld{2,3,4}{,_lane,_dup}, vcombine, vcreate

gcc/:

* config/aarch64/aarch64.c (aarch64_split_simd_combine): Add V4HFmode.
* config/aarch64/aarch64-builtins.c (VAR13, VAR14): New.
(aarch64_scalar_builtin_types, aarch64_init_simd_builtin_scalar_types):
Add __builtin_aarch64_simd_hf.
* config/aarch64/arm_neon.h (float16x4x2_t, float16x8x2_t,
float16x4x3_t, float16x8x3_t, float16x4x4_t, float16x8x4_t,
vcombine_f16, vst2_lane_f16, vst2q_lane_f16, vst3_lane_f16,
vst3q_lane_f16, vst4_lane_f16, vst4q_lane_f16, vld2_f16, vld2q_f16,
vld3_f16, vld3q_f16, vld4_f16, vld4q_f16, vld2_dup_f16, vld2q_dup_f16,
vld3_dup_f16, vld3q_dup_f16, vld4_dup_f16, vld4q_dup_f16,
vld2_lane_f16, vld2q_lane_f16, vld3_lane_f16, vld3q_lane_f16,
vld4_lane_f16, vld4q_lane_f16, vst2_f16, vst2q_f16, vst3_f16,
vst3q_f16, vst4_f16, vst4q_f16, vcreate_f16): New.

* config/aarch64/iterators.md (VALLDIF, Vtype, Vetype, Vbtype,
V_cmp_result, v_cmp_result): Add cases for V4HF and V8HF.
(VDC, Vdbl): Add V4HF.

gcc/testsuite/:

* gcc.target/aarch64/vldN_1.c: Add float16x4_t and float16x8_t cases.
* gcc.target/aarch64/vldN_dup_1.c: Likewise.
* gcc.target/aarch64/vldN_lane_1.c: Likewise.
(main): update orig_data to avoid float16 NaN on bigendian.

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

8 years ago[AArch64] Add support for float16x{4,8}_t vectors/builtins
alalaw01 [Tue, 8 Sep 2015 18:57:31 +0000 (18:57 +0000)]
[AArch64] Add support for float16x{4,8}_t vectors/builtins

gcc/:

* config/aarch64/aarch64.c (aarch64_vector_mode_supported_p): Support
V4HFmode and V8HFmode.
(aarch64_split_simd_move): Add case for V8HFmode.
* config/aarch64/aarch64-builtins.c (v4hf_UP, v8hf_UP): Define.
(aarch64_simd_builtin_std_type): Handle HFmode.
(aarch64_init_simd_builtin_types): Include Float16x4_t and Float16x8_t.

* config/aarch64/aarch64-simd.md (mov<mode>, aarch64_get_lane<mode>,
aarch64_ld1<VALL:mode>, aarch64_st1<VALL:mode): Use VALL_F16 iterator.
(aarch64_be_ld1<mode>, aarch64_be_st1<mode>): Use VALLDI_F16 iterator.

* config/aarch64/aarch64-simd-builtin-types.def: Add Float16x4_t,
Float16x8_t.

* config/aarch64/aarch64-simd-builtins.def (ld1, st1): Use VALL_F16.
* config/aarch64/arm_neon.h (float16x4_t, float16x8_t, float16_t):
New typedefs.
(vget_lane_f16, vgetq_lane_f16, vset_lane_f16, vsetq_lane_f16,
vld1_f16, vld1q_f16, vst1_f16, vst1q_f16, vst1_lane_f16,
vst1q_lane_f16): New.
* config/aarch64/iterators.md (VD, VQ, VQ_NO2E): Add vectors of HFmode.
(VALLDI_F16, VALL_F16): New.
(Vmtype, VEL, VCONQ, VHALF, V_TWO_ELEM, V_THREE_ELEM, V_FOUR_ELEM, q):
Add cases for V4HF and V8HF.
(VDBL, VRL2, VRL3, VRL4): Add V4HF case.

gcc/testsuite/:

* g++.dg/abi/mangle-neon-aarch64.C: Add cases for float16x4_t and
float16x8_t.
* gcc.target/aarch64/vset_lane_1.c: Likewise.
* gcc.target/aarch64/vld1-vst1_1.c: Likewise.
* gcc.target/aarch64/vld1_lane.c: Likewise.

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

8 years ago[ARM] Remaining intrinsics
alalaw01 [Tue, 8 Sep 2015 18:48:47 +0000 (18:48 +0000)]
[ARM] Remaining intrinsics

* config/arm/arm-builtins.c (VAR11, VAR12): New.
* config/arm/arm_neon_builtins.def (vcombine, vld2_dup, vld3_dup,
vld4_dup): Add v4hf variant.
(vget_high, vget_low): Add v8hf variant.
(vld1, vst1, vst1_lane, vld2, vld2_lane, vst2, vst2_lane, vld3,
vld3_lane, vst3, vst3_lane, vld4, vld4_lane, vst4, vst4_lane): Add
v4hf and v8hf variants.

* config/arm/iterators.md (VD_LANE, VD_RE, VQ2, VQ_HS): New.
(VDX): Add V4HF.
(V_DOUBLE): Add case for V4HF.
(VQX): Add V8HF.
(V_HALF): Add case for V8HF.
(VDQX): Add V4HF, V8HF.
(V_elem, V_two_elem, V_three_elem, V_four_elem, V_cmp_result,
V_uf_sclr, V_sz_elem, V_mode_nunits, q): Add cases for V4HF & V8HF.

* config/arm/neon.md (vec_set<mode>internal, vec_extract<mode>,
neon_vget_lane<mode>_sext_internal, neon_vget_lane<mode>_zext_internal,
vec_load_lanesoi<mode>, neon_vld2<mode>, vec_store_lanesoi<mode>,
neon_vst2<mode>, vec_load_lanesci<mode>, neon_vld3<mode>,
neon_vld3qa<mode>, neon_vld3qb<mode>, vec_store_lanesci<mode>,
neon_vst3<mode>, neon_vst3qa<mode>, neon_vst3qb<mode>,
vec_load_lanesxi<mode>, neon_vld4<mode>, neon_vld4qa<mode>,
neon_vld4qb<mode>, vec_store_lanesxi<mode>, neon_vst4<mode>,
neon_vst4qa<mode>, neon_vst4qb<mode>): Change VQ iterator to VQ2.

(neon_vcreate, neon_vreinterpretv8qi<mode>,
neon_vreinterpretv4hi<mode>, neon_vreinterpretv2si<mode>,
neon_vreinterpretv2sf<mode>, neon_vreinterpretdi<mode>):
Change VDX to VD_RE.

(neon_vld2_lane<mode>, neon_vst2_lane<mode>, neon_vld3_lane<mode>,
neon_vst3_lane<mode>, neon_vld4_lane<mode>, neon_vst4_lane<mode>):
Change VD iterator to VD_LANE, and VMQ iterator to VQ_HS.

* config/arm/arm_neon.h (float16x4x2_t, float16x8x2_t, float16x4x3_t,
float16x8x3_t, float16x4x4_t, float16x8x4_t, vcombine_f16,
vget_high_f16, vget_low_f16, vld1_f16, vld1q_f16, vst1_f16, vst1q_f16,
vst1_lane_f16, vst1q_lane_f16, vld2_f16, vld2q_f16, vld2_lane_f16,
vld2q_lane_f16, vld2_dup_f16, vst2_f16, vst2q_f16, vst2_lane_f16,
vst2q_lane_f16, vld3_f16, vld3q_f16, vld3_lane_f16, vld3q_lane_f16,
vld3_dup_f16, vst3_f16, vst3q_f16, vst3_lane_f16, vst3q_lane_f16,
vld4_f16, vld4q_f16, vld4_lane_f16, vld4q_lane_f16, vld4_dup_f16,
vst4_f16, vst4q_f16, vst4_lane_f16, vst4q_lane_f16): New.

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

8 years ago[ARM] float16x8_t intrinsics in arm_neon.h
alalaw01 [Tue, 8 Sep 2015 18:38:26 +0000 (18:38 +0000)]
[ARM] float16x8_t intrinsics in arm_neon.h

* config/arm/arm_neon.h (vgetq_lane_f16, vsetq_lane_f16, vld1q_lane_f16,
vld1q_dup_f16, vreinterpretq_p8_f16, vreinterpretq_p16_f16,
vreinterpretq_f16_p8, vreinterpretq_f16_p16, vreinterpretq_f16_f32,
vreinterpretq_f16_p64, vreinterpretq_f16_p128, vreinterpretq_f16_s64,
vreinterpretq_f16_u64, vreinterpretq_f16_s8, vreinterpretq_f16_s16,
vreinterpretq_f16_s32, vreinterpretq_f16_u8, vreinterpretq_f16_u16,
vreinterpretq_f16_u32, vreinterpretq_f32_f16, vreinterpretq_p64_f16,
vreinterpretq_p128_f16, vreinterpretq_s64_f16, vreinterpretq_u64_f16,
vreinterpretq_s8_f16, vreinterpretq_s16_f16, vreinterpretq_s32_f16,
vreinterpretq_u8_f16, vreinterpretq_u16_f16, vreinterpretq_u32_f16):
New.

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

8 years agofix ChangeLog whitespace
alalaw01 [Tue, 8 Sep 2015 18:33:36 +0000 (18:33 +0000)]
fix ChangeLog whitespace

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

8 years ago[ARM] Add V8HFmode and float16x8_t type
alalaw01 [Tue, 8 Sep 2015 18:30:07 +0000 (18:30 +0000)]
[ARM] Add V8HFmode and float16x8_t type

* config/arm/arm.h (VALID_NEON_QREG_MODE): Add V8HFmode.

* config/arm/arm.c (arm_vector_mode_supported_p): Support V8HFmode.

* config/arm/arm-builtins.c (v8hf_UP): New.
(arm_init_simd_builtin_types): Initialise Float16x8_t.

* config/arm/arm-simd-builtin-types.def (Float16x8_t): New.

* config/arm/arm_neon.h (float16x8_t): New typedef.

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

8 years ago[ARM] float16x4_t intrinsics in arm_neon.h
alalaw01 [Tue, 8 Sep 2015 18:03:32 +0000 (18:03 +0000)]
[ARM] float16x4_t intrinsics in arm_neon.h

* config/arm/arm_neon.h (float16_t, vget_lane_f16, vset_lane_f16,
vcreate_f16, vld1_lane_f16, vld1_dup_f16, vreinterpret_p8_f16,
vreinterpret_p16_f16, vreinterpret_f16_p8, vreinterpret_f16_p16,
vreinterpret_f16_f32, vreinterpret_f16_p64, vreinterpret_f16_s64,
vreinterpret_f16_u64, vreinterpret_f16_s8, vreinterpret_f16_s16,
vreinterpret_f16_s32, vreinterpret_f16_u8, vreinterpret_f16_u16,
vreinterpret_f16_u32, vreinterpret_f32_f16, vreinterpret_p64_f16,
vreinterpret_s64_f16, vreinterpret_u64_f16, vreinterpret_s8_f16,
vreinterpret_s16_f16, vreinterpret_s32_f16, vreinterpret_u8_f16,
vreinterpret_u16_f16, vreinterpret_u32_f16): New.

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

8 years agofix ChangeLog entry for r227407
cbaylis [Tue, 8 Sep 2015 17:24:12 +0000 (17:24 +0000)]
fix ChangeLog entry for r227407

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

8 years ago PR other/67457
ian [Tue, 8 Sep 2015 16:46:16 +0000 (16:46 +0000)]
PR other/67457
* backtrace.c: #include "internal.h".
(struct backtrace_data): Add can_alloc field.
(unwind): If can_alloc is false, don't try to get file/line
information.
(backtrace_full): Set can_alloc field in bdata.
* alloc.c (backtrace_alloc): Don't call error_callback if it is
NULL.
* mmap.c (backtrace_alloc): Likewise.
* internal.h: Update comments for backtrace_alloc and
backtrace_free.

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

8 years agoMerge liboffloadmic from upstream, version 20150803.
iverbin [Tue, 8 Sep 2015 15:39:59 +0000 (15:39 +0000)]
Merge liboffloadmic from upstream, version 20150803.

liboffloadmic/
* Makefile.am (liboffloadmic_host_la_DEPENDENCIES): Remove libcoi_host
and libmyo-client.  liboffloadmic_host loads them dynamically.
* Makefile.in: Regenerate.
* doc/doxygen/header.tex: Merge from upstream, version 20150803
<https://openmprtl.org/sites/default/files/liboffload_oss_20150803.tgz>.
* runtime/cean_util.cpp: Likewise.
* runtime/cean_util.h: Likewise.
* runtime/coi/coi_client.cpp: Likewise.
* runtime/coi/coi_client.h: Likewise.
* runtime/coi/coi_server.cpp: Likewise.
* runtime/coi/coi_server.h: Likewise.
* runtime/compiler_if_host.cpp: Likewise.
* runtime/compiler_if_host.h: Likewise.
* runtime/compiler_if_target.cpp: Likewise.
* runtime/compiler_if_target.h: Likewise.
* runtime/dv_util.cpp: Likewise.
* runtime/dv_util.h: Likewise.
* runtime/liboffload_error.c: Likewise.
* runtime/liboffload_error_codes.h: Likewise.
* runtime/liboffload_msg.c: Likewise.
* runtime/liboffload_msg.h: Likewise.
* runtime/mic_lib.f90: Likewise.
* runtime/offload.h: Likewise.
* runtime/offload_common.cpp: Likewise.
* runtime/offload_common.h: Likewise.
* runtime/offload_engine.cpp: Likewise.
* runtime/offload_engine.h: Likewise.
* runtime/offload_env.cpp: Likewise.
* runtime/offload_env.h: Likewise.
* runtime/offload_host.cpp: Likewise.
* runtime/offload_host.h: Likewise.
* runtime/offload_iterator.h: Likewise.
* runtime/offload_myo_host.cpp: Likewise.
* runtime/offload_myo_host.h: Likewise.
* runtime/offload_myo_target.cpp: Likewise.
* runtime/offload_myo_target.h: Likewise.
* runtime/offload_omp_host.cpp: Likewise.
* runtime/offload_omp_target.cpp: Likewise.
* runtime/offload_orsl.cpp: Likewise.
* runtime/offload_orsl.h: Likewise.
* runtime/offload_table.cpp: Likewise.
* runtime/offload_table.h: Likewise.
* runtime/offload_target.cpp: Likewise.
* runtime/offload_target.h: Likewise.
* runtime/offload_target_main.cpp: Likewise.
* runtime/offload_timer.h: Likewise.
* runtime/offload_timer_host.cpp: Likewise.
* runtime/offload_timer_target.cpp: Likewise.
* runtime/offload_trace.cpp: Likewise.
* runtime/offload_trace.h: Likewise.
* runtime/offload_util.cpp: Likewise.
* runtime/offload_util.h: Likewise.
* runtime/ofldbegin.cpp: Likewise.
* runtime/ofldend.cpp: Likewise.
* runtime/orsl-lite/include/orsl-lite.h: Likewise.
* runtime/orsl-lite/lib/orsl-lite.c: Likewise.
* runtime/use_mpss2.txt: Likewise.
* include/coi/common/COIEngine_common.h: Merge from upstream, MPSS
version 3.5
<http://registrationcenter.intel.com/irc_nas/7445/mpss-src-3.5.tar>.
* include/coi/common/COIEvent_common.h: Likewise.
* include/coi/common/COIMacros_common.h: Likewise.
* include/coi/common/COIPerf_common.h: Likewise.
* include/coi/common/COIResult_common.h: Likewise.
* include/coi/common/COISysInfo_common.h: Likewise.
* include/coi/common/COITypes_common.h: Likewise.
* include/coi/sink/COIBuffer_sink.h: Likewise.
* include/coi/sink/COIPipeline_sink.h: Likewise.
* include/coi/sink/COIProcess_sink.h: Likewise.
* include/coi/source/COIBuffer_source.h: Likewise.
* include/coi/source/COIEngine_source.h: Likewise.
* include/coi/source/COIEvent_source.h: Likewise.
* include/coi/source/COIPipeline_source.h: Likewise.
* include/coi/source/COIProcess_source.h: Likewise.
* include/myo/myo.h: Likewise.
* include/myo/myoimpl.h: Likewise.
* include/myo/myotypes.h: Likewise.
* plugin/Makefile.am (myo_inc_dir): Remove.
(libgomp_plugin_intelmic_la_CPPFLAGS): Do not define MYO_SUPPORT.
(AM_CPPFLAGS): Likewise for offload_target_main.
* plugin/Makefile.in: Regenerate.
* runtime/emulator/coi_common.h: Update copyright years.
(OFFLOAD_EMUL_KNC_NUM_ENV): Replace with ...
(OFFLOAD_EMUL_NUM_ENV): ... this.
(enum cmd_t): Add CMD_CLOSE_LIBRARY.
* runtime/emulator/coi_device.cpp: Update copyright years.
(COIProcessWaitForShutdown): Add space between string constants.
Return handle to host in CMD_OPEN_LIBRARY.
Support CMD_CLOSE_LIBRARY.
* runtime/emulator/coi_device.h: Update copyright years.
* runtime/emulator/coi_host.cpp: Update copyright years.
(knc_engines_num): Replace with ...
(num_engines): ... this.
(init): Replace OFFLOAD_EMUL_KNC_NUM_ENV with OFFLOAD_EMUL_NUM_ENV.
(COIEngineGetCount): Replace COI_ISA_KNC with COI_ISA_MIC, and
knc_engines_num with num_engines.
(COIEngineGetHandle): Likewise.
(COIProcessCreateFromMemory): Add space between string constants.
(COIProcessCreateFromFile): New function.
(COIProcessLoadLibraryFromMemory): Rename arguments according to
COIProcess_source.h.  Return handle, received from target.
(COIProcessUnloadLibrary): New function.
(COIPipelineClearCPUMask): New function.
(COIPipelineSetCPUMask): New function.
(COIEngineGetInfo): New function.
* runtime/emulator/coi_host.h: Update copyright years.
* runtime/emulator/coi_version_asm.h: Regenerate.
* runtime/emulator/coi_version_linker_script.map: Regenerate.
* runtime/emulator/myo_client.cpp: Update copyright years.
* runtime/emulator/myo_service.cpp: Update copyright years.
(myoArenaRelease): New function.
(myoArenaAcquire): New function.
(myoArenaAlignedFree): New function.
(myoArenaAlignedMalloc): New function.
* runtime/emulator/myo_service.h: Update copyright years.
* runtime/emulator/myo_version_asm.h: Regenerate.
* runtime/emulator/myo_version_linker_script.map: Regenerate.

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

8 years ago/cp
paolo [Tue, 8 Sep 2015 15:02:01 +0000 (15:02 +0000)]
/cp
2015-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67369
* pt.c (tsubst_copy, [case FUNCTION_DECL]): Do not call tsubst
if the first argument isn't a template.

/testsuite
2015-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67369
* g++.dg/cpp1y/lambda-generic-ice4.C: New.

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

8 years ago PR other/67457
ian [Tue, 8 Sep 2015 13:49:19 +0000 (13:49 +0000)]
PR other/67457
* mmap.c (backtrace_alloc): Correct test for mmap failure.

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

8 years agoDaily bump.
gccadmin [Tue, 8 Sep 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoRelax Debug Mode assertions on operator-> for smart pointers.
redi [Mon, 7 Sep 2015 17:17:23 +0000 (17:17 +0000)]
Relax Debug Mode assertions on operator-> for smart pointers.

* include/bits/shared_ptr_base.h (__shared_ptr::operator->): Change
_GLIBCXX_DEBUG_ASSERT to _GLIBCXX_DEBUG_PEDASSERT.
* include/bits/unique_ptr.h (unique_ptr::operator->): Likewise.
* testsuite/20_util/shared_ptr/observers/get.cc: Test operator-> on
empty shared_ptr.

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

8 years ago * config/i386/intelmic-mkoffload.c (prepare_target_image): Handle all
iverbin [Mon, 7 Sep 2015 15:25:43 +0000 (15:25 +0000)]
* config/i386/intelmic-mkoffload.c (prepare_target_image): Handle all
non-alphanumeric characters in the symbol name.

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

8 years agoAvoid #ifdef _GLIBCXX_DEBUG in regex_compiler.h
redi [Mon, 7 Sep 2015 14:45:14 +0000 (14:45 +0000)]
Avoid #ifdef _GLIBCXX_DEBUG in regex_compiler.h

* include/bits/regex_compiler.h (_BracketMatcher::_M_is_ready):
Initialize using NSDMI and set using _GLIBCXX_DEBUG_ONLY.

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

8 years agoRename shadowed variable in libstdc++ test.
redi [Mon, 7 Sep 2015 11:33:20 +0000 (11:33 +0000)]
Rename shadowed variable in libstdc++ test.

* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Rename
shadowed variable.

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

8 years agoEnable timed mutex unlock tests on darwin.
redi [Mon, 7 Sep 2015 10:40:25 +0000 (10:40 +0000)]
Enable timed mutex unlock tests on darwin.

* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Run on
darwin.
* testsuite/30_threads/timed_mutex/unlock/2.cc: Run on darwin.

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

8 years ago PR inline-asm/67448
mpolacek [Mon, 7 Sep 2015 09:19:13 +0000 (09:19 +0000)]
PR inline-asm/67448
* gimplify.c (gimplify_asm_expr): Don't allow MODIFY_EXPR as
a memory input.

* gcc.dg/asm-10.c: New test.

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

8 years ago * system.h (INTTYPE_MINIMUM): Rewrite to avoid shift warning.
mpolacek [Mon, 7 Sep 2015 09:11:17 +0000 (09:11 +0000)]
* system.h (INTTYPE_MINIMUM): Rewrite to avoid shift warning.

* system.h (INTTYPE_MINIMUM): Rewrite to avoid shift warning.

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

8 years agoDaily bump.
gccadmin [Mon, 7 Sep 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

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

8 years agogcc:
bonzini [Sun, 6 Sep 2015 14:05:00 +0000 (14:05 +0000)]
gcc:
* config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Do
not warn.

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

8 years agoDaily bump.
gccadmin [Sun, 6 Sep 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoDaily bump.
gccadmin [Sat, 5 Sep 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoPR 53379 Print backtrace on error termination.
jb [Fri, 4 Sep 2015 22:17:11 +0000 (22:17 +0000)]
PR 53379 Print backtrace on error termination.

2015-09-05  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/53379
* libgfortran.h (exit_error): New prototype.
* runtime/error.c (exit_error): New function.
(os_error): Call exit_error instead of exit.
(runtime_error): Likewise.
(runtime_error_at): Likewise.
(internal_error): Likewise.
(generate_error): Likewise.
(notify_std): Likewise.
* runtime/stop.c (error_stop_string): Likewise.
(error_stop_numeric): Likewise.

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

8 years ago * intrinsic.h (gfc_simplify_mvbits): Remove.
fxcoudert [Fri, 4 Sep 2015 19:36:57 +0000 (19:36 +0000)]
* intrinsic.h (gfc_simplify_mvbits): Remove.
* simplify.c (gfc_simplify_mvbits): Remove.
* intrinsic.c (add_subroutines): Remove reference to
gfc_simplify_mvbits.

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

8 years ago2015-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
pault [Fri, 4 Sep 2015 18:37:50 +0000 (18:37 +0000)]
2015-09-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/67429
* error.c (gfc_clear_pp_buffer): Reset last_location, otherwise
caret lines might be skipped when actually giving a diagnostic.

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

8 years ago PR middle-end/67452
jakub [Fri, 4 Sep 2015 18:32:00 +0000 (18:32 +0000)]
PR middle-end/67452
* tree-ssa-live.c: Include cfgloop.h.
(remove_unused_locals): Clear loop->simduid if simduid is about
to be removed from cfun->local_decls.

* gcc.dg/lto/pr67452_0.c: New test.

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

8 years agogcc/ChangeLog
denisc [Fri, 4 Sep 2015 16:34:11 +0000 (16:34 +0000)]
gcc/ChangeLog

PR target/65210
* config/avr/avr.c (avr_eval_addr_attrib): Look for io_low
attribute as well.

gcc/testsuite/ChangeLog

PR target/65210
* gcc.target/avr/pr65210.c: New test.

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

8 years agofix darwin bootstrap errors due to <mutex>.
redi [Fri, 4 Sep 2015 16:09:05 +0000 (16:09 +0000)]
fix darwin bootstrap errors due to <mutex>.

PR libstdc++/65704
* include/std/mutex (recursive_timed_mutex): Fix uses of _Can_lock.

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

8 years agoDocument ftrapv/fwrapv interaction
vries [Fri, 4 Sep 2015 15:59:21 +0000 (15:59 +0000)]
Document ftrapv/fwrapv interaction

2015-09-04  Tom de Vries  <tom@codesourcery.com>

* doc/invoke.texi (@item -ftrapv, @item -fwrapv): Document interaction.

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

8 years ago[PATCH] Minor cleanup of const_and_copies stack
law [Fri, 4 Sep 2015 15:15:59 +0000 (15:15 +0000)]
[PATCH] Minor cleanup of const_and_copies stack

* tree-ssa-scopedtables.c (const_and_copies::const_and_copies): Remove
unnecessary constructor.  It's now trivial and implemented inside...
* tree-ssa-scopedtables.h (const_and_copies): Implement trivial
constructor.  Add comments to various methods.  Remove unused
private fields.
* tree-ssa-dom.c (pass_dominator::execute): Corresponding changes.
* tree-vrp.c (identify_jump_threads): Likewise.
* tree-ssa-threadedge.c (thread_through_normal_block): Fix minor
indentation issues.
(thread_across_edge): Similarly.
(record_temporary_equivalences_from_stmts_at_dest): Remove unused
arguments in constructor call.

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

8 years agoApppend $prop to et_prop_list only if needed
hjl [Fri, 4 Sep 2015 15:09:22 +0000 (15:09 +0000)]
Apppend $prop to et_prop_list only if needed

PR testsuite/67450
* lib/target-supports.exp (check_cached_effective_target):
Apppend $prop to et_prop_list only if needed.

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

8 years ago PR sanitizer/67279
mpolacek [Fri, 4 Sep 2015 12:37:39 +0000 (12:37 +0000)]
PR sanitizer/67279
* c-typeck.c (build_binary_op): Don't instrument static initializers.

* gcc.dg/ubsan/pr67279.c: New test.

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

8 years agoAdd portable timed_mutex and recursive_timed_mutex.
redi [Fri, 4 Sep 2015 11:23:44 +0000 (11:23 +0000)]
Add portable timed_mutex and recursive_timed_mutex.

PR libstdc++/65704
* include/Makefile.am: Add <bits/mutex.h>.
* include/Makefile.in: Regenerate.
* include/bits/mutex.h (__mutex_base, mutex, lock_guard, unique_lock):
New file containing types moved from <mutex>.
* include/std/condition_variable: Include <bits/mutex.h> instead of
<mutex>.
* include/std/mutex (__mutex_base, mutex, lock_guard, unique_lock):
Move to <bits/mutex.h>.
*  testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Remove
dg-require-gthreads-timed.
*  testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/dest/
destructor_locked.cc: Likewise.
*  testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
*  testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
*  testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
*  testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
*  testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
Likewise.
*  testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
Likewise.
*  testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
*  testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
*  testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
*  testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
*  testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
*  testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
*  testsuite/30_threads/unique_lock/locking/4.cc: Likewise.

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

8 years ago2015-09-04 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
iverbin [Fri, 4 Sep 2015 11:21:39 +0000 (11:21 +0000)]
2015-09-04  Jonas Hahnfeld  <Hahnfeld@itc.rwth-aachen.de>

gcc/
* config/i386/intelmic-mkoffload.c (prepare_target_image): Fix if the
temp path contains a '-'.

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

8 years agoAdd C++11 header <cuchar>.
redi [Fri, 4 Sep 2015 11:13:34 +0000 (11:13 +0000)]
Add C++11 header <cuchar>.

2015-09-04  Edward Smith-Rowland  <3dw4rd@verizon.net>
    Jonathan Wakely  <jwakely@redhat.com>

* acinclude.m4 (GLIBCXX_CHECK_UCHAR_H): Define.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac: Check for <uchar.h>.
* include/Makefile.am: Add new headers.
* include/Makefile.in: Regenerate.
* include/c/cuchar: New.
* include/c_compatibility/uchar.h: New.
* include/c_global/cuchar: New.
* include/c_std/cuchar: New.
* include/precompiled/stdc++.h: Include <cuchar>.
* testsuite/17_intro/headers/c++200x/stdc++.cc: Include <uchar.h>.
* testsuite/17_intro/headers/c++200x/stdc++_multiple_inclusion.cc:
Include <uchar.h>.

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

8 years agoMake all <cxxx> headers include <bits/c++config.h>
redi [Fri, 4 Sep 2015 09:16:29 +0000 (09:16 +0000)]
Make all <cxxx> headers include <bits/c++config.h>

PR libstdc++/65473
* include/c/cassert: Include <bits/c++config.h>.
* include/c/cerrno: Likewise.
* include/c/cfloat: Likewise.
* include/c/ciso646: Likewise.
* include/c/climits: Likewise.
* include/c_global/cassert: Likewise.
* include/c_global/cerrno: Likewise.
* include/c_global/cfloat: Likewise.
* include/c_global/ciso646: Likewise.
* include/c_global/climits: Likewise.
* include/c_std/cassert: Likewise.
* include/c_std/cerrno: Likewise.
* include/c_std/cfloat: Likewise.
* include/c_std/ciso646: Likewise.
* include/c_std/climits: Likewise.

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

8 years agogcc/testsuite/
kyukhin [Fri, 4 Sep 2015 08:56:28 +0000 (08:56 +0000)]
gcc/testsuite/
* gcc.target/i386/avx512f-scatter-1.c: New.
* gcc.target/i386/avx512f-scatter-2.c: Ditto.
* gcc.target/i386/avx512f-scatter-3.c: Ditto.

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

8 years agogcc/
kyukhin [Fri, 4 Sep 2015 08:54:14 +0000 (08:54 +0000)]
gcc/
* config/i386/i386-builtin-types.def
(VOID_PFLOAT_HI_V8DI_V16SF_INT): New.
(VOID_PDOUBLE_QI_V16SI_V8DF_INT): Ditto.
(VOID_PINT_HI_V8DI_V16SI_INT): Ditto.
(VOID_PLONGLONG_QI_V16SI_V8DI_INT): Ditto.
* config/i386/i386.c
(ix86_builtins): Add IX86_BUILTIN_SCATTERALTSIV8DF,
IX86_BUILTIN_SCATTERALTDIV16SF, IX86_BUILTIN_SCATTERALTSIV8DI,
IX86_BUILTIN_SCATTERALTDIV16SI.
(ix86_init_mmx_sse_builtins): Define __builtin_ia32_scatteraltsiv8df,
__builtin_ia32_scatteraltdiv8sf, __builtin_ia32_scatteraltsiv8di,
__builtin_ia32_scatteraltdiv8si.
(ix86_expand_builtin): Handle IX86_BUILTIN_SCATTERALTSIV8DF,
IX86_BUILTIN_SCATTERALTDIV16SF, IX86_BUILTIN_SCATTERALTSIV8DI,
IX86_BUILTIN_SCATTERALTDIV16SI.
(ix86_vectorize_builtin_scatter): New.
(TARGET_VECTORIZE_BUILTIN_SCATTER): Define as
ix86_vectorize_builtin_scatter.

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

8 years agogcc/
kyukhin [Fri, 4 Sep 2015 08:51:44 +0000 (08:51 +0000)]
gcc/
* doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_SCATTER): New.
* doc/tm.texi: Regenerate.
* target.def: Add scatter builtin.
* tree-vectorizer.h: Rename gather_p to gather_scatter_p and use it
for loads/stores in case of gather/scatter accordingly.
(STMT_VINFO_GATHER_SCATTER_P(S)): Use it instead of STMT_VINFO_GATHER_P(S).
(vect_check_gather): Rename to ...
(vect_check_gather_scatter): this.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Use
STMT_VINFO_GATHER_SCATTER_P instead of STMT_VINFO_SCATTER_P.
(vect_check_gather_scatter): Use it instead of vect_check_gather.
(vect_analyze_data_refs): Add gatherscatter enum and maybe_scatter variable
and new checkings for it accordingly.
* tree-vect-stmts.c
(STMT_VINFO_GATHER_SCATTER_P(S)): Use it instead of STMT_VINFO_GATHER_P(S).
(vect_check_gather_scatter): Use it instead of vect_check_gather.
(vectorizable_store): Add checkings for STMT_VINFO_GATHER_SCATTER_P.

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

8 years agoDaily bump.
gccadmin [Fri, 4 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years agolibgfortran: Use remove(3) instead of unlink(2) when deleting files.
jb [Thu, 3 Sep 2015 21:18:56 +0000 (21:18 +0000)]
libgfortran: Use remove(3) instead of unlink(2) when deleting files.

testsuite:

2015-09-04  Janne Blomqvist  <jb@gcc.gnu.org>

* gfortran.dg/read_dir.f90: Delete empty directory when closing
rather than calling rmdir, cleanup if open fails.

libgfortran:

2015-09-04  Janne Blomqvist  <jb@gcc.gnu.org>

* io/unix.h (delete_file): Remove prototype.
* io/unix.c (delete_file): Remove function.
* io/close.c (st_close): Replace delete_file and unlink with
remove.
* io/open.c (already_open): Replace unlink with remove.

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

8 years agoClean up libstdc++ includes slightly.
redi [Thu, 3 Sep 2015 20:40:03 +0000 (20:40 +0000)]
Clean up libstdc++ includes slightly.

* include/bits/shared_ptr_base.h: Add required header.
* include/std/condition_variable: Likewise.
* include/std/mutex: Remove unused header.
* include/std/shared_mutex: Remove redundant header.
(shared_mutex::shared_mutex()): Replace throw with __throw_bad_alloc.

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

8 years ago PR libstdc++/66902
redi [Thu, 3 Sep 2015 19:05:15 +0000 (19:05 +0000)]
PR libstdc++/66902
* src/c++11/debug.cc (_S_debug_messages): Make array const.

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

8 years ago[gcc]
wschmidt [Thu, 3 Sep 2015 18:08:42 +0000 (18:08 +0000)]
[gcc]

2015-09-03  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* config/rs6000/altivec.md (altivec_vperm_v8hiv16qi): New
define_insn.
(mulv16qi3): New define_expand.

[gcc/testsuite]

2015-09-03  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* gcc.target/powerpc/vec-mult-char-1.c: New test.
* gcc.target/powerpc/vec-mult-char-2.c: New test.
* lib/target-supports.exp (check_effective_target_vect_char_mult):
Return true for PowerPC targets that implement Altivec.

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

8 years agoRemove path prefixes from filenames.
jakub [Thu, 3 Sep 2015 17:28:59 +0000 (17:28 +0000)]
Remove path prefixes from filenames.

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

8 years agoRemove mistakenly added file.
jakub [Thu, 3 Sep 2015 17:26:59 +0000 (17:26 +0000)]
Remove mistakenly added file.

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

8 years ago[PATCH][AARCH64]Make arm_align_max_stack_pwr.c and arm_align_max_pwr.c compile
renlin [Thu, 3 Sep 2015 17:16:33 +0000 (17:16 +0000)]
[PATCH][AARCH64]Make arm_align_max_stack_pwr.c and arm_align_max_pwr.c compile
testcase, instead of execution.

gcc/testsuite/

2015-09-03  Renlin Li  <renlin.li@arm.com>

* gcc.target/aarch64/arm_align_max_pwr.c: Make it a compile test case,
  check the assembly.
* gcc.target/aarch64/arm_align_max_stack_pwr.c: Likewise.

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

8 years agogcc/ChangeLog
msebor [Thu, 3 Sep 2015 16:23:11 +0000 (16:23 +0000)]
gcc/ChangeLog
2015-09-03  Martin Sebor  <msebor@redhat.com>

PR c/66516
* doc/extend.texi (Other Builtins): Document when the address
of a built-in function can be taken.

gcc/c-family/ChangeLog
2015-09-03  Martin Sebor  <msebor@redhat.com>

PR c/66516
* c-common.h (c_decl_implicit, reject_gcc_builtin): Declare new
functions.
* c-common.c (reject_gcc_builtin): Define.

gcc/c/ChangeLog
2015-09-03  Martin Sebor  <msebor@redhat.com>

PR c/66516
* c/c-typeck.c (convert_arguments, parser_build_unary_op)
(build_conditional_expr, c_cast_expr, convert_for_assignment)
(build_binary_op, _objc_common_truthvalue_conversion): Call
reject_gcc_builtin.
(c_decl_implicit): Define.

gcc/cp/ChangeLog
2015-09-03  Martin Sebor  <msebor@redhat.com>

PR c/66516
* cp/cp-tree.h (mark_rvalue_use, decay_conversion): Add new
argument(s).
* cp/expr.c (mark_rvalue_use): Use new argument.
* cp/call.c (build_addr_func): Call decay_conversion with new
argument.
* cp/pt.c (convert_template_argument): Call reject_gcc_builtin.
* cp/typeck.c (decay_conversion): Use new argument.
(c_decl_implicit): Define.

gcc/testsuite/ChangeLog
2015-09-03  Martin Sebor  <msebor@redhat.com>

PR c/66516
* g++.dg/addr_builtin-1.C: New test.
* gcc.dg/addr_builtin-1.c: New test.

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

8 years ago * configure.tgt: Add missing ;; in between nvptx and rtems
jakub [Thu, 3 Sep 2015 16:20:35 +0000 (16:20 +0000)]
* configure.tgt: Add missing ;; in between nvptx and rtems
snippets.

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

8 years agoMake std::experimental::not_fn SFINAE-friendly.
redi [Thu, 3 Sep 2015 14:36:03 +0000 (14:36 +0000)]
Make std::experimental::not_fn SFINAE-friendly.

PR libstdc++/66998
* include/experimental/functional (_Not_fn): Add exception
specifications and non-deduced return types.
(not_fn): Add exception specification and wrap pointer-to-member.
* testsuite/experimental/functional/not_fn.cc: Test in SFINAE context
and test pointer-to-member.

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

8 years agoAdd concept checks to std::next and std::prev.
redi [Thu, 3 Sep 2015 14:35:43 +0000 (14:35 +0000)]
Add concept checks to std::next and std::prev.

PR libstdc++/62039
* include/bits/stl_iterator_base_funcs.h (next, prev): Add concept
checks.
* testsuite/24_iterators/operations/prev_neg.cc: New.
* testsuite/24_iterators/operations/next_neg.cc: New.

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

8 years ago2015-09-03 Richard Biener <rguenther@suse.de>
rguenth [Thu, 3 Sep 2015 14:13:54 +0000 (14:13 +0000)]
2015-09-03  Richard Biener  <rguenther@suse.de>

* dwarf2out.c (flush_limbo_die_list): Split out from ...
(dwarf2out_early_finish): ... here.
(dwarf2out_finish): Do not call dwarf2out_early_finish but
flush_limbo_die_list.  Assert we have no deferred asm names.

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

8 years ago[gcc]
wschmidt [Thu, 3 Sep 2015 13:52:17 +0000 (13:52 +0000)]
[gcc]

2015-09-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* optabs.c (expand_binop): Don't create a broadcast vector with a
source element wider than the inner mode.

[gcc/testsuite]

2015-09-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vec-shift.c: New test.

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

8 years ago2015-09-03 Richard Biener <rguenther@suse.de>
rguenth [Thu, 3 Sep 2015 12:45:33 +0000 (12:45 +0000)]
2015-09-03  Richard Biener  <rguenther@suse.de>

* varasm.c (output_constant): Use fold_convert instead of
wide_int_to_tree.

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

8 years ago[gomp] Add thread attribute customization
sh [Thu, 3 Sep 2015 11:34:28 +0000 (11:34 +0000)]
[gomp] Add thread attribute customization

libgomp/ChangeLog

* config/posix/pool.h (gomp_adjust_thread_attr): New.
* config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
(gomp_thread_pool_reservoir): Add priority member.
* confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
priority.
(parse_thread_pools): Likewise.
* team.c (gomp_team_start): Call configuration provided
gomp_adjust_thread_attr(). Destroy thread attributes if
necessary.
* libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.

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

8 years ago[gomp] Thread pool management
sh [Thu, 3 Sep 2015 11:29:59 +0000 (11:29 +0000)]
[gomp] Thread pool management

libgomp/ChangeLog

* config/posix/pool.h: New.
* config/rtems/pool.h: Likewise.
* config/rtems/proc.c: Likewise.
* libgomp.h (gomp_thread_destructor): Declare.
* team.c: Include configuration provided "pool.h".
(gomp_get_thread_pool): Define in configuration.
(gomp_team_end): Call configuration defined
gomp_release_thread_pool().

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

8 years ago[gomp] Add RTEMS configuration
sh [Thu, 3 Sep 2015 11:26:36 +0000 (11:26 +0000)]
[gomp] Add RTEMS configuration

libgomp/ChangeLog

* config/rtems/bar.c: New.
* config/rtems/bar.h: Likewise.
* config/rtems/mutex.c: Likewise.
* config/rtems/mutex.h: Likewise.
* config/rtems/sem.c: Likewise.
* config/rtems/sem.h: Likewise.
* configure.ac (*-*-rtems*): Check that Newlib provides a proper
<sys/lock.h> header file.
* configure.tgt (*-*-rtems*): Enable RTEMS configuration if
supported by Newlib.
* configure: Regenerate.

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

8 years ago[gomp] Simplify thread pool initialization
sh [Thu, 3 Sep 2015 11:24:34 +0000 (11:24 +0000)]
[gomp] Simplify thread pool initialization

libgomp/ChangeLog

* team.c (gomp_new_thread_pool): Delete and move content to ...
(gomp_get_thread_pool): ... new function.  Allocate and
initialize thread pool on demand.
(get_last_team): Use gomp_get_thread_pool().
(gomp_team_start): Delete thread pool initialization.

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

8 years agoHandle 2 preds for fin_bb in expand_omp_for_static_chunk
vries [Thu, 3 Sep 2015 11:01:22 +0000 (11:01 +0000)]
Handle 2 preds for fin_bb in expand_omp_for_static_chunk

2015-09-03  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65637
* omp-low.c (expand_omp_for_static_chunk): Handle case that fin_bb has 2
predecessors.

* gcc.dg/autopar/reduc-4.c: New test.

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

8 years agoFix inner loop phi in expand_omp_for_static_chunk
vries [Thu, 3 Sep 2015 11:01:14 +0000 (11:01 +0000)]
Fix inner loop phi in expand_omp_for_static_chunk

2015-09-03  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65637
* omp-low.c (find_phi_with_arg_on_edge): New function.
(expand_omp_for_static_chunk): Fix inner loop phi.

* testsuite/libgomp.c/autopar-2.c: New test.

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

8 years agoFix gcc_assert in expand_omp_for_static_chunk
vries [Thu, 3 Sep 2015 11:01:05 +0000 (11:01 +0000)]
Fix gcc_assert in expand_omp_for_static_chunk

2015-09-03  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65637
* omp-low.c (expand_omp_for_static_chunk): Fix gcc_assert for the case
that head is NULL.

* gcc.dg/autopar/pr46099-2.c: New test.

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

8 years agoHandle simple latch bb in expand_omp_for_static_chunk
vries [Thu, 3 Sep 2015 11:00:56 +0000 (11:00 +0000)]
Handle simple latch bb in expand_omp_for_static_chunk

2015-09-03  Tom de Vries  <tom@codesourcery.com>

* omp-low.c (expand_omp_for_static_chunk): Handle simple latch bb.

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

8 years agoAdd param parloops-chunk-size
vries [Thu, 3 Sep 2015 11:00:46 +0000 (11:00 +0000)]
Add param parloops-chunk-size

2015-09-03  Tom de Vries  <tom@codesourcery.com>

* doc/invoke.texi (parloops-chunk-size): Add item.
* params.def (PARAM_PARLOOPS_CHUNK_SIZE): Add DEFPARAM.
* tree-parloops.c: Include params.h.
(create_parallel_loop): Set chunk-size of schedule of omp-for loop, if
param parloops-chunk-size is used.

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

8 years ago2015-09-03 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Thu, 3 Sep 2015 10:25:28 +0000 (10:25 +0000)]
2015-09-03  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* g++.dg/pr67351.C: Correct the testcase name.

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

8 years ago2015-09-03 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Thu, 3 Sep 2015 10:20:03 +0000 (10:20 +0000)]
2015-09-03  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

PR middle-end/67351

gcc/ChangeLog:
* fold-const.c (fold_binary_loc) : Move
Transform (x >> c) << c into x & (-1<<c) or
transform (x << c) >> c into x & ((unsigned)-1 >> c) for unsigned
types using simplify and match.
* match.pd (lshift (rshift @0 INTEGER_CST@1) @1) : New simplifier.
(rshift (lshift @0 INTEGER_CST@1) @1) : New Simplifier.

gcc/testsuite/ChangeLog:
* g++.dg/pr66752-2.C: New test.

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

8 years ago2015-09-03 Richard Biener <rguenther@suse.de>
rguenth [Thu, 3 Sep 2015 09:24:51 +0000 (09:24 +0000)]
2015-09-03  Richard Biener  <rguenther@suse.de>

PR ipa/66705
* tree-ssa-structalias.c (ctor_for_analysis): New function.
(create_variable_info_for_1): Use ctor_for_analysis instead
of get_constructor.
(create_variable_info_for): Likewise.

* g++.dg/lto/pr66705_0.C: New testcase.

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

8 years agolibstdc++: Run tests on RTEMS
sh [Thu, 3 Sep 2015 05:45:33 +0000 (05:45 +0000)]
libstdc++: Run tests on RTEMS

libstdc++-v3/ChangeLog

* testsuite/18_support/pthread_guard.cc: Add *-*-rtems* target
selector to all lines which contain a *-*-cygwin target selector.
* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
* testsuite/21_strings/basic_string/pthread33394.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/pthread5.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.
* testsuite/30_threads/async/49668.cc: Likewise.
* testsuite/30_threads/async/54297.cc: Likewise.
* testsuite/30_threads/async/any.cc: Likewise.
* testsuite/30_threads/async/async.cc: Likewise.
* testsuite/30_threads/async/launch.cc: Likewise.
* testsuite/30_threads/async/lwg2021.cc: Likewise.
* testsuite/30_threads/async/sync.cc: Likewise.
* testsuite/30_threads/call_once/39909.cc: Likewise.
* testsuite/30_threads/call_once/49668.cc: Likewise.
* testsuite/30_threads/call_once/60497.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/54185.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
* testsuite/30_threads/future/cons/move.cc: Likewise.
* testsuite/30_threads/future/members/45133.cc: Likewise.
* testsuite/30_threads/future/members/get.cc: Likewise.
* testsuite/30_threads/future/members/get2.cc: Likewise.
* testsuite/30_threads/future/members/share.cc: Likewise.
* testsuite/30_threads/future/members/valid.cc: Likewise.
* testsuite/30_threads/future/members/wait.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/lock/1.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/lock/3.cc: Likewise.
* testsuite/30_threads/lock/4.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.
* testsuite/30_threads/packaged_task/60564.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
* testsuite/30_threads/promise/60966.cc: Likewise.
* testsuite/30_threads/promise/cons/1.cc: Likewise.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
* testsuite/30_threads/promise/cons/move.cc: Likewise.
* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
* testsuite/30_threads/promise/members/get_future.cc: Likewise.
* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value.cc: Likewise.
* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
* testsuite/30_threads/shared_future/members/get.cc: Likewise.
* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/this_thread/1.cc: Likewise.
* testsuite/30_threads/this_thread/2.cc: Likewise.
* testsuite/30_threads/this_thread/3.cc: Likewise.
* testsuite/30_threads/this_thread/4.cc: Likewise.
* testsuite/30_threads/thread/cons/1.cc: Likewise.
* testsuite/30_threads/thread/cons/2.cc: Likewise.
* testsuite/30_threads/thread/cons/3.cc: Likewise.
* testsuite/30_threads/thread/cons/4.cc: Likewise.
* testsuite/30_threads/thread/cons/49668.cc: Likewise.
* testsuite/30_threads/thread/cons/5.cc: Likewise.
* testsuite/30_threads/thread/cons/6.cc: Likewise.
* testsuite/30_threads/thread/cons/7.cc: Likewise.
* testsuite/30_threads/thread/cons/8.cc: Likewise.
* testsuite/30_threads/thread/cons/9.cc: Likewise.
* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* testsuite/30_threads/thread/members/1.cc: Likewise.
* testsuite/30_threads/thread/members/2.cc: Likewise.
* testsuite/30_threads/thread/members/3.cc: Likewise.
* testsuite/30_threads/thread/members/4.cc: Likewise.
* testsuite/30_threads/thread/members/5.cc: Likewise.
* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/try_lock/1.cc: Likewise.
* testsuite/30_threads/try_lock/2.cc: Likewise.
* testsuite/30_threads/try_lock/3.cc: Likewise.
* testsuite/30_threads/try_lock/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.

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

8 years agoRTEMS: Update RTEMS thread model
sh [Thu, 3 Sep 2015 05:28:46 +0000 (05:28 +0000)]
RTEMS: Update RTEMS thread model

libgcc/ChangeLog

* config/gthr-rtems.h (__GTHREADS_CXX0X): New.
(__GTHREAD_HAS_COND): Likewise.
(__gthread_t): Likewise.
(__gthread_cond_t): Likewise.
(__gthread_time_t): Likewise.
(__GTHREAD_MUTEX_INIT): Likewise.
(__GTHREAD_RECURSIVE_MUTEX_INIT): Likewise.
(__GTHREAD_COND_INIT): Likewise.
(__GTHREAD_COND_INIT_FUNCTION): Likewise.
(__GTHREAD_TIME_INIT): Likewise.
(__gthread_create): Likewise.
(__gthread_join): Likewise.
(__gthread_detach): Likewise.
(__gthread_equal): Likewise.
(__gthread_self): Likewise.
(__gthread_yield): Likewise.
(__gthread_cond_broadcast): Likewise.
(__gthread_cond_signal): Likewise.
(__gthread_cond_wait): Likewise.
(__gthread_cond_timedwait): Likewise.
(__gthread_cond_wait_recursive): Likewise.
(__gthread_cond_destroy): Likewise.
(rtems_gxx_once): Delete.
(rtems_gxx_key_create): Likewise.
(rtems_gxx_key_delete): Likewise.
(rtems_gxx_getspecific): Likewise.
(rtems_gxx_setspecific): Likewise.
(rtems_gxx_mutex_init): Likewise.
(rtems_gxx_mutex_destroy): Likewise.
(rtems_gxx_mutex_lock): Likewise.
(rtems_gxx_mutex_trylock): Likewise.
(rtems_gxx_mutex_unlock): Likewise.
(rtems_gxx_recursive_mutex_init): Likewise.
(rtems_gxx_recursive_mutex_lock): Likewise.
(rtems_gxx_recursive_mutex_trylock): Likewise.
(rtems_gxx_recursive_mutex_unlock): Likewise.
(__GTHREAD_ONCE_INIT): Use <pthread.h> initializer.
(__GTHREAD_MUTEX_INIT_FUNCTION): Use <pthread.h> function.
(__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION): Likewise.
(__gthread_once): Likewise.
(__gthread_key_create): Likewise.
(__gthread_key_delete): Likewise.
(__gthread_getspecific): Likewise.
(__gthread_setspecific): Likewise.
(__gthread_key_t): Use <pthread.h> type.
(__gthread_once_t): Likewise
(__gthread_mutex_t): Use <sys/lock.h> type.
(__gthread_recursive_mutex_t): Likewise
(__gthread_mutex_lock): Use <sys/lock.h> function.
(__gthread_mutex_trylock): Likewise.
(__gthread_mutex_timedlock): Likewise.
(__gthread_mutex_unlock): Likewise.
(__gthread_mutex_destroy): Likewise.
(__gthread_recursive_mutex_lock): Likewise.
(__gthread_recursive_mutex_trylock): Likewise.
(__gthread_recursive_mutex_timedlock): Likewise.
(__gthread_recursive_mutex_unlock): Likewise.
(__gthread_recursive_mutex_destroy): Likewise.

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

8 years ago compiler: Report invalid receiver types in function definitions.
ian [Thu, 3 Sep 2015 04:33:32 +0000 (04:33 +0000)]
compiler: Report invalid receiver types in function definitions.

    Fixes golang/go#12324.

    Reviewed-on: https://go-review.googlesource.com/13988

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

8 years agoDaily bump.
gccadmin [Thu, 3 Sep 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoFix spawned function with lambda function
hjl [Wed, 2 Sep 2015 23:59:21 +0000 (23:59 +0000)]
Fix spawned function with lambda function

Make sure that the spawned function's arguments will not be pushed
into lambda function.

gcc/c-family/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
prototype.
* c-gimplify.c (c_gimplify_expr): Added a call to the function
cilk_gimplify_call_params_in_spawned_fn.
* cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
(gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
unwrapping.

gcc/cp/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): New
function.
(cp_gimplify_expr): Added a call to the function
cilk_cp_gimplify_call_params_in_spawned_fn.

gcc/testsuite/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* c-c++-common/cilk-plus/CK/pr60586.c: New file.
* g++.dg/cilk-plus/CK/pr60586.cc: Likewise.

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

8 years ago PR c/67432
mpolacek [Wed, 2 Sep 2015 21:00:38 +0000 (21:00 +0000)]
PR c/67432
* c-parser.c (c_parser_enum_specifier): Give a better error for
an empty enum.

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

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

8 years ago compiler: Mark erroneous constants as invalid.
ian [Wed, 2 Sep 2015 20:52:42 +0000 (20:52 +0000)]
compiler: Mark erroneous constants as invalid.

    When the compiler failed to evaluate a numeric constant because
    because it was erroneous, there was no way for parent nodes to
    discover the error and lower themselves into error nodes.  This patch
    now uses the NC_INVALID enumerator to mark numeric constants with a
    known, reported error.

    Fixes golang/go#11541.

    Reviewed-on: https://go-review.googlesource.com/13904

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

8 years agogcc/Changelog
cbaylis [Wed, 2 Sep 2015 15:24:54 +0000 (15:24 +0000)]
gcc/Changelog

        * cgraphunit.c (cgraph_node::create_wrapper): Set can_throw_external
        in new callgraph edge.

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

8 years agoPR 67414 Better diagnostics on backtrace failure, gf_strerror bugfix
jb [Wed, 2 Sep 2015 14:51:40 +0000 (14:51 +0000)]
PR 67414 Better diagnostics on backtrace failure, gf_strerror bugfix

2015-09-02  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/67414
* io/write.c (gfc_itoa): Move to runtime/string.c.
* libgfortran.h (show_backtrace): Make arg bool.
(gfc_itoa): New prototype.
* runtime/backtrace.c (struct mystate): Change type of try_simple
field, add in_signal_handler field.
(error_callback): Print out error number, or if not in a signal
handler, the error message.
(show_backtrace): Change type of arg, change initialization of
struct mystate.
(backtrace): Call show_backtrace with correct arg type.
* runtime/compile_options.c (backtrace_handler): Call with correct
arg type.
* runtime/error.c (sys_abort): Likewise.
(gf_strerror): Handle newlocale() failure.
* runtime/string.c (gfc_itoa): Function moved here from
io/write.c.

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

8 years agolibstdc++: fix data races in basic_string implementation
dvyukov [Wed, 2 Sep 2015 14:35:20 +0000 (14:35 +0000)]
libstdc++: fix data races in basic_string implementation

        * include/bits/basic_string.h: Fix data races on _M_refcount.

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

8 years ago[AArch64_be] Fix vldX/vstX AdvSIMD intrinsics.
clyon [Wed, 2 Sep 2015 14:04:22 +0000 (14:04 +0000)]
[AArch64_be] Fix vldX/vstX AdvSIMD intrinsics.

2015-09-02  Christophe Lyon  <christophe.lyon@linaro.org>

PR target/59810
PR target/63652
PR target/63653
* config/aarch64/aarch64-simd.md
(aarch64_ld<VSTRUCT:nregs><VQ:mode>): Call
gen_aarch64_simd_ld<VSTRUCT:nregs><VQ:mode>.
(aarch64_st<VSTRUCT:nregs><VQ:mode>): Call
gen_aarch64_simd_st<VSTRUCT:nregs><VQ:mode>.

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

8 years ago[testsuite] Clean up effective_target cache.
clyon [Wed, 2 Sep 2015 14:01:51 +0000 (14:01 +0000)]
[testsuite] Clean up effective_target cache.

2015-09-02  Christophe Lyon  <christophe.lyon@linaro.org>

* lib/target-supports.exp (clear_effective_target_cache): New.
(check_cached_effective_target): Update et_prop_list.
* lib/asan-dg.exp (asan_finish): Call clear_effective_target_cache.
* g++.dg/compat/compat.exp: Likewise.
* g++.dg/compat/struct-layout-1.exp: Likewise.
* lib/asan-dg.exp: Likewise.
* lib/atomic-dg.exp: Likewise.
* lib/cilk-plus-dg.exp: Likewise.
* lib/clearcap.exp: Likewise.
* lib/mpx-dg.exp: Likewise.
* lib/tsan-dg.exp: Likewise.
* lib/ubsan-dg.exp: Likewise.

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

8 years ago2015-09-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
redi [Wed, 2 Sep 2015 10:51:14 +0000 (10:51 +0000)]
2015-09-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>

PR libstdc++/67408
* include/std/mutex (__timed_mutex_impl::_M_try_lock_until): Use
_Derived::_M_timedlock().
(timed_mutex): Add _M_timedlock() and make base class a friend.
(recursive_timed_mutex): Likewise.

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

8 years ago[RS6000] Don't pass --oformat to ld
amodra [Wed, 2 Sep 2015 07:58:03 +0000 (07:58 +0000)]
[RS6000] Don't pass --oformat to ld

ld -m options select a particular ld emulation (e*.c files in ld build
dir) which provides a compiled-in scripts or select a script from
ldscripts/.  Each of these has an OUTPUT_FORMAT statement, which does
the same thing as --oformat.  --oformat is therefore redundant when
using GNU ld built this century, except possibly when overriding the
default ld scripts with -T.

* config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Don't define.
* config/rs6000/sysv4.h (LINK_TARGET_SPEC): Likewise.
(LINK_SPEC, SUBTARGET_EXTRA_SPECS): Delete link_target.

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

8 years ago compiler: Accept out of range integer -> unicode conversions.
ian [Wed, 2 Sep 2015 00:46:23 +0000 (00:46 +0000)]
compiler: Accept out of range integer -> unicode conversions.

    When converting a signed or unsigned integer value into a constant
    string, if the integer does not fit into the Go "int" type, the string
    will become "\uFFFD."

    Fixes golang/go#11525.

    Reviewed-on: https://go-review.googlesource.com/13906

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

8 years agoDaily bump.
gccadmin [Wed, 2 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years agofixed misplaced testcase
zadeck [Tue, 1 Sep 2015 23:37:20 +0000 (23:37 +0000)]
fixed misplaced testcase

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

8 years ago[RS6000] Weak functions may not be file local
amodra [Tue, 1 Sep 2015 23:03:19 +0000 (23:03 +0000)]
[RS6000] Weak functions may not be file local

A weak symbol defined in the current object file may not turn out to
be the definition used at link time, if other copies of the symbol
exist.  This means they can't be considered file local.

PR target/67417
* config/rs6000/predicates.md (current_file_function_operand): Don't
return true for weak symbols.
* config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Likewise.

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

8 years agoMIPS compact branch support
mpf [Tue, 1 Sep 2015 22:41:08 +0000 (22:41 +0000)]
MIPS compact branch support

gcc/
* config/mips/mips-opts.h (mips_cb_setting): New enum.
* config/mips/mips-protos.h: Add definitions for
mips_output_jump and mips_output_equal_conditional_branch
* gcc/config/mips/mips.c (MIPS_JR): Change to support the
JIC instruction.
(mips_emit_compare): Add support for the MIPS R6 conditional
compact branches.
(mips_process_sync_loop): Likewise.
(mips_output_order_conditional_branch): Likewise.
(mips16_build_call_stub): Change MIPS_CALL to
mips_output_jump.
(mips_print_operand_punctuation): Update 's' case to only
apply to micromips r2.
(mips_adjust_insn_length): Add support for forbidden slot
hazards.
(mips_avoid_hazard): Likewise.
(mips_reorg_process_insns): Likewise.
(mips_output_jump): New function.
(mips_output_equal_conditional_branch): Likewise.
(mips_output_conditional_branch): Use jrc/bc if compact
branch support is enabled.  Ensure the forbidden slots
between the two branch instructions is filled with a nop.
(mips_option_override): Add support to process the compact
branch option and set the correct defaults.  Prevent
non-explict relocs being using for MIPS R6.
(mips_trampoline_init): Add compact branch support.
(mips_mult_zero_zero_cost): Allow zero initialisation of
accumulators with TARGET_DSP.
* gcc/config/mips/mips.h (TARGET_CB_NEVER): New define.
(TARGET_CB_MAYBE): New define.
(TARGET_CB_ALWAYS): New define.
(ISA_HAS_DELAY_SLOTS): New define.
(ISA_HAS_COMPACT_BRANCHES): New define.
(ISA_HAS_JRC): New define.
(MIPS_BRANCH_C): New define.
(MIPS_CALL): Removed.
(MICROMIPS_J): Removed.
* config/mips/mips.md (compact_form): New attr.
(hazard): Add support for forbidden slots.
(define_delay): Add support for compact branches.
(*branch_order<mode>): Likewise.
(*branch_order<mode>_inverted): Likewise.
(*branch_equality<mode>): Likewise.
(*branch_equality<mode>_inverted): Likewise.
(*jump_absolute): Likewise.
(*jump_pic): Likewise.
(indirect_jump): Use mips_output_jump to produce assembly output.
(tablejump_<mode>"): Likewise.
(*<optab>"): Likewise.
(<optab>_internal): Likewise.
(sibcall_internal): Likewise.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_split): Likewise.
(call_internal_direct): Likewise.
(call_direct_split): Likewise.
(call_value_internal): Likewise.
(call_value_split): Likewise.
(call_value_internal_direct): Likewise.
(call_value_direct_split): Likewise.
(call_value_multiple_internal): Likewise.
(call_value_multiple_split): Likewise.
(mips_get_fcsr_mips16_<mode>): Likewise.
(mips_set_fcsr_mips16_<mode>): Likewise.
(tls_get_tp_mips16_<mode>): Likewise.
* config/mips/mips.opt: Add -mcompact-branches option.
* config/mips/predicates.md (order_operator): Ensure the
conditional compact branches are only used if the ISA them.
* doc/invoke.texi: Document -mcompact-branches option.

gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Handle the
dependencies between ISA level and compact-branches.
* gcc.target/mips/branch-10.c: Update expected output to allow
compact forms of b/bal.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/branch-3.c: Likewise.
* gcc.target/mips/branch-4.c: Likewise.
* gcc.target/mips/branch-5.c: Likewise.
* gcc.target/mips/branch-6.c: Likewise.
* gcc.target/mips/branch-7.c: Likewise.
* gcc.target/mips/branch-8.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.
* gcc.target/mips/branch-cost-1.c: Likewise.
* gcc.target/mips/call-1.c: Likewise.
* gcc.target/mips/call-2.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/call-4.c: Likewise.
* gcc.target/mips/call-5.c: Likewise.
* gcc.target/mips/call-6.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
* gcc.target/mips/near-far-1.c: Likewise.
* gcc.target/mips/near-far-2.c: Likewise.
* gcc.target/mips/near-far-3.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
* gcc.target/mips/umips-branch-3.c: Ensure the test is
run with compact branches allowed.
* gcc.target/mips/compact-branches-1.c: New file.
* gcc.target/mips/compact-branches-2.c: Likewise.
* gcc.target/mips/compact-branches-3.c: Likewise.
* gcc.target/mips/compact-branches-4.c: Likewise.
* gcc.target/mips/compact-branches-5.c: Likewise.
* gcc.target/mips/compact-branches-6.c: Likewise.
* gcc.target/mips/compact-branches-7.c: Likewise.

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