Richard Biener
7b5fc413c1
re PR tree-optimization/66036 (strided group loads are not vectorized)
...
2015-05-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/66036
* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
Handle strided group loads.
(vect_verify_datarefs_alignment): Likewise.
(vect_enhance_data_refs_alignment): Likewise.
(vect_analyze_group_access): Likewise.
(vect_analyze_data_ref_access): Likewise.
(vect_analyze_data_ref_accesses): Likewise.
* tree-vect-stmts.c (vect_model_load_cost): Likewise.
(vectorizable_load): Likewise.
* gcc.dg/vect/slp-41.c: New testcase.
From-SVN: r222914
2015-05-08 15:13:55 +00:00
Mikael Morin
4a8108f0ab
trans-array.c (gfc_walk_elemental_function_args): Don't skip the advance to the next dummy argument when...
...
gcc/fortran/
* trans-array.c (gfc_walk_elemental_function_args):
Don't skip the advance to the next dummy argument when skipping
absent optional args.
gcc/testsuite/
* gfortran.dg/elemental_optional_args_7.f90: New.
From-SVN: r222913
2015-05-08 14:53:20 +00:00
Segher Boessenkool
2a812183d6
rs6000.md: Require operand inequality in one of the peepholes.
...
* config/rs6000/rs6000.md: Require operand inequality in one
of the peepholes.
From-SVN: r222912
2015-05-08 16:34:11 +02:00
Richard Sandiford
7d54bea5b9
Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
...
gcc/
2015-05-08 Richard Sandiford <richard.sandiford@arm.com>
Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* config/i386/i386.md (<mode>_ldx, *<mode>_ldx): Remove mode
from (set ...).
* config/rx/rx.md (movdi, movdf): Likewise.
Likewise for define_peephole2s.
Co-Authored-By: Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
From-SVN: r222911
2015-05-08 14:04:12 +00:00
Alan Lawrence
a8105959bd
[AArch64] Idiomatic 64x1 comparisons in arm_neon.h
...
gcc/:
* config/aarch64/arm_neon.h (vceq_s64, vceq_u64, vceqz_s64, vceqz_u64,
vcge_s64, vcge_u64, vcgez_s64, vcgt_s64, vcgt_u64, vcgtz_s64, vcle_s64,
vcle_u64, vclez_s64, vclt_s64, vclt_u64, vcltz_s64, vtst_s64,
vtst_u64): Rewrite using gcc vector extensions.
gcc/testsuite/:
* gcc.target/aarch64/singleton_intrinsics_1.c: Generalize regex to
allow cmlt or sshr.
From-SVN: r222909
2015-05-08 12:00:10 +00:00
Alan Lawrence
8b5190aba0
[AArch64] Add vcond(u?)didi pattern
...
* config/aarch64/aarch64-simd.md (aarch64_vcond_internal<mode><mode>,
vcond<mode><mode>, vcondu<mode><mode>): Add DImode variant.
From-SVN: r222908
2015-05-08 11:49:02 +00:00
Alan Lawrence
938fb83d2c
optabs.c: Make vector_compare_rtx cope with VOID mode constants (e.g. const0_rtx)
...
* optabs.c (vector_compare_rtx): Handle RTL operands having VOIDmode.
From-SVN: r222907
2015-05-08 11:40:33 +00:00
Szabolcs Nagy
07ad804bfd
[PATCH 0/13] Add musl support to GCC
...
2015-05-08 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/glibc-stdint.h (OPTION_MUSL): Define.
(INT_FAST16_TYPE, INT_FAST32_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE):
Change the definition based on OPTION_MUSL for 64 bit targets.
* config/linux.h (OPTION_MUSL): Redefine.
* config/alpha/linux.h (OPTION_MUSL): Redefine.
* config/rs6000/linux.h (OPTION_MUSL): Redefine.
* config/rs6000/linux64.h (OPTION_MUSL): Redefine.
From-SVN: r222905
2015-05-08 08:30:40 +00:00
Gregor Richards
755658a56b
[PATCH 2/13] musl libc config
...
2015-05-08 Gregor Richards <gregor.richards@uwaterloo.ca>
Szabolcs Nagy <szabolcs.nagy@arm.com>
* config.gcc (LIBC_MUSL): New tm_defines macro.
* config/linux.h (OPTION_MUSL): Define.
(MUSL_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER32,)
(MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32,)
(INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,)
(INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,)
(INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define.
* config/linux.opt (mmusl): New option.
* doc/invoke.texi (GNU/Linux Options): Document -mmusl.
* configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*.
(gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*.
* configure: Regenerate.
Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
From-SVN: r222904
2015-05-08 08:25:47 +00:00
H.J. Lu
2a0e43c247
PR target/48904 x86_64-knetbsd-gnu missing defs
...
2015-05-08 H.J. Lu <hongjiu.lu@intel.com>
Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
PR target/48904
* config.gcc (x86_64-*-knetbsd*-gnu): Add i386/knetbsd-gnu64.h.
* config/i386/knetbsd-gnu64.h: New file.
Co-Authored-By: Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
From-SVN: r222903
2015-05-08 09:33:42 +02:00
Jason Merrill
90f11cf950
re PR c++/59012 (alignas does not support parameter pack expansions)
...
PR c++/59012
* parser.c (cp_parser_std_attribute_list): Handle attribute expansion.
(cp_parser_std_attribute_spec): Handle alignas pack expansion.
* decl2.c (is_late_template_attribute): An attribute exp is dependent.
* pt.c (make_pack_expansion): Allow TREE_LIST for attribute expansion.
(apply_late_template_attributes): Handle attribute pack expansion.
From-SVN: r222902
2015-05-08 00:42:06 -04:00
GCC Administrator
d87333bcc8
Daily bump.
...
From-SVN: r222901
2015-05-08 00:16:15 +00:00
Marek Polacek
755e528f96
re PR c/64918 (invalid (?) warning when initializing structure)
...
PR c/64918
* c.opt (Woverride-init-side-effects): New option.
* c-typeck.c (add_pending_init): Use OPT_Woverride_init_side_effects.
(output_init_element): Likewise.
* doc/invoke.texi: Document -Woverride-init-side-effects.
* gcc.dg/Woverride-init-side-effects-1.c: New test.
* gcc.dg/Woverride-init-side-effects-2.c: New test.
From-SVN: r222894
2015-05-07 22:14:27 +00:00
Marek Polacek
0173bd2a03
re PR c/65179 (Introduce new C warning: -Wshift-negative-value)
...
PR c/65179
* c-common.c (c_fully_fold_internal): Warn when left shifting a
negative value.
* c.opt (Wshift-negative-value): New option.
* c-opts.c (c_common_post_options): Set warn_shift_negative_value
when -Wextra and C99/C++11 mode.
* c-typeck.c (build_binary_op): Warn when left shifting a negative
value.
* typeck.c (cp_build_binary_op): Warn when left shifting a negative
value.
* doc/invoke.texi: Document -Wshift-negative-value.
* c-c++-common/Wshift-negative-value-1.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-2.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-3.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-4.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-5.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-6.c: New test.
* testsuite/gcc.dg/c90-left-shift-1.c: New test.
* testsuite/gcc.dg/c99-const-expr-7.c: Add dg-error.
* testsuite/gcc.dg/c99-left-shift-1.c: New test.
From-SVN: r222889
2015-05-07 19:36:31 +00:00
Aditya Kumar
d57c994589
gcov-tool.c (do_merge): Refactore to remove int ret.
...
* gcov-tool.c (do_merge): Refactore to remove int ret.
* ipa-icf.c (sem_item::hash_referenced_symbol_properties): Change
!type == FUNC to type != FUNC.
* reload.h (struct target_reload): Changee to type of
x_spill_indirect_levels from bool to unsigned char.
From-SVN: r222884
2015-05-07 19:57:11 +02:00
Richard Sandiford
f7df4a840c
rtl.h (always_void_p): New function.
...
gcc/
* rtl.h (always_void_p): New function.
* gengenrtl.c (always_void_p): Likewise.
(genmacro): Don't add a mode parameter to gen_rtx_foo if rtxes
with code foo are always VOIDmode.
* genemit.c (gen_exp): Update gen_rtx_foo calls accordingly.
* builtins.c, caller-save.c, calls.c, cfgexpand.c, combine.c,
compare-elim.c, config/aarch64/aarch64.c,
config/aarch64/aarch64.md, config/alpha/alpha.c,
config/alpha/alpha.md, config/arc/arc.c, config/arc/arc.md,
config/arm/arm-fixed.md, config/arm/arm.c, config/arm/arm.md,
config/arm/ldrdstrd.md, config/arm/thumb2.md, config/arm/vfp.md,
config/avr/avr.c, config/bfin/bfin.c, config/c6x/c6x.c,
config/c6x/c6x.md, config/cr16/cr16.c, config/cris/cris.c,
config/cris/cris.md, config/darwin.c, config/epiphany/epiphany.c,
config/epiphany/epiphany.md, config/fr30/fr30.c, config/frv/frv.c,
config/frv/frv.md, config/h8300/h8300.c, config/i386/i386.c,
config/i386/i386.md, config/i386/sse.md, config/ia64/ia64.c,
config/ia64/vect.md, config/iq2000/iq2000.c,
config/iq2000/iq2000.md, config/lm32/lm32.c, config/lm32/lm32.md,
config/m32c/m32c.c, config/m32r/m32r.c, config/m68k/m68k.c,
config/m68k/m68k.md, config/mcore/mcore.c, config/mcore/mcore.md,
config/mep/mep.c, config/microblaze/microblaze.c,
config/mips/mips.c, config/mips/mips.md, config/mmix/mmix.c,
config/mn10300/mn10300.c, config/msp430/msp430.c,
config/nds32/nds32-memory-manipulation.c, config/nds32/nds32.c,
config/nds32/nds32.md, config/nios2/nios2.c, config/nvptx/nvptx.c,
config/pa/pa.c, config/pa/pa.md, config/rl78/rl78.c,
config/rs6000/altivec.md, config/rs6000/rs6000.c,
config/rs6000/rs6000.md, config/rs6000/vector.md,
config/rs6000/vsx.md, config/rx/rx.c, config/rx/rx.md,
config/s390/s390.c, config/s390/s390.md, config/sh/sh.c,
config/sh/sh.md, config/sh/sh_treg_combine.cc,
config/sparc/sparc.c, config/sparc/sparc.md, config/spu/spu.c,
config/spu/spu.md, config/stormy16/stormy16.c,
config/tilegx/tilegx.c, config/tilegx/tilegx.md,
config/tilepro/tilepro.c, config/tilepro/tilepro.md,
config/v850/v850.c, config/v850/v850.md, config/vax/vax.c,
config/visium/visium.c, config/xtensa/xtensa.c, cprop.c, dse.c,
expr.c, gcse.c, ifcvt.c, ira.c, jump.c, lower-subreg.c,
lra-constraints.c, lra-eliminations.c, lra.c, postreload.c, ree.c,
reg-stack.c, reload.c, reload1.c, reorg.c, sel-sched.c,
var-tracking.c: Update calls accordingly.
From-SVN: r222883
2015-05-07 16:58:46 +00:00
Jason Merrill
d5449acf6b
DR 1467 PR c++/51747
...
DR 1467
PR c++/51747
* typeck2.c (digest_init_r): Fix single element list.
From-SVN: r222881
2015-05-07 12:46:49 -04:00
Segher Boessenkool
a3facd7c6c
re PR middle-end/192 (String literals don't obey -fdata-sections)
...
PR middle-end/192
PR middle-end/54303
* varasm.c (function_mergeable_rodata_prefix): New function.
(mergeable_string_section): Use it.
(mergeable_constant_section): Use it.
gcc/testsuite/
* gcc.dg/fdata-sections-2.c: New file.
From-SVN: r222880
2015-05-07 17:51:01 +02:00
Marek Polacek
302f83f948
re PR testsuite/66046 (UBSan output pattern tests fail on target ARM board.)
...
PR testsuite/66046
* c-c++-common/ubsan/align-6.c: Don't match trailing newlines in the
last dg-output.
* c-c++-common/ubsan/align-7.c: Likewise.
* c-c++-common/ubsan/bounds-8.c: Likewise.
* c-c++-common/ubsan/float-cast-overflow-9.c: Likewise.
* c-c++-common/ubsan/load-bool-enum.c: Likewise.
* c-c++-common/ubsan/null-1.c: Likewise.
* c-c++-common/ubsan/null-10.c: Likewise.
* c-c++-common/ubsan/null-11.c: Likewise.
* c-c++-common/ubsan/null-2.c: Likewise.
* c-c++-common/ubsan/null-3.c: Likewise.
* c-c++-common/ubsan/null-4.c: Likewise.
* c-c++-common/ubsan/null-5.c: Likewise.
* c-c++-common/ubsan/null-6.c: Likewise.
* c-c++-common/ubsan/null-7.c: Likewise.
* c-c++-common/ubsan/null-8.c: Likewise.
* c-c++-common/ubsan/null-9.c: Likewise.
* c-c++-common/ubsan/object-size-1.c: Likewise.
* c-c++-common/ubsan/object-size-10.c: Likewise.
* c-c++-common/ubsan/object-size-4.c: Likewise.
* c-c++-common/ubsan/object-size-5.c: Likewise.
* c-c++-common/ubsan/object-size-7.c: Likewise.
* c-c++-common/ubsan/object-size-8.c: Likewise.
* c-c++-common/ubsan/object-size-9.c: Likewise.
* c-c++-common/ubsan/overflow-add-2.c: Likewise.
* c-c++-common/ubsan/overflow-int128.c: Likewise.
* c-c++-common/ubsan/overflow-mul-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-4.c: Likewise.
* c-c++-common/ubsan/overflow-negate-1.c: Likewise.
* c-c++-common/ubsan/overflow-negate-3.c: Likewise.
* c-c++-common/ubsan/overflow-sub-2.c: Likewise.
* c-c++-common/ubsan/overflow-sub-4.c: Likewise.
* c-c++-common/ubsan/pr59333.c: Likewise.
* c-c++-common/ubsan/pr59667.c: Likewise.
* c-c++-common/ubsan/pr60613-2.c: Likewise.
* c-c++-common/ubsan/pr60636.c: Likewise.
* c-c++-common/ubsan/pr63802.c: Likewise.
* c-c++-common/ubsan/recovery-1.c: Likewise.
* c-c++-common/ubsan/recovery-3.c: Likewise.
* c-c++-common/ubsan/shift-1.c: Likewise.
* c-c++-common/ubsan/shift-2.c: Likewise.
* c-c++-common/ubsan/shift-4.c: Likewise.
* c-c++-common/ubsan/shift-7.c: Likewise.
* c-c++-common/ubsan/undefined-2.c: Likewise.
* c-c++-common/ubsan/vla-1.c: Likewise.
* g++.dg/ubsan/null-1.C: Likewise.
* g++.dg/ubsan/null-3.C: Likewise.
* g++.dg/ubsan/null-4.C: Likewise.
* g++.dg/ubsan/vptr-8.C: Likewise.
* g++.dg/ubsan/vptr-9.C: Likewise.
* gcc.dg/ubsan/bounds-2.c: Likewise.
* gcc.dg/ubsan/object-size-9.c: Likewise.
From-SVN: r222878
2015-05-07 14:44:26 +00:00
Jeff Law
48451e8f3c
match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to narrow arithmetic.
...
* match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New
simplifier to narrow arithmetic.
* generic-match-head.c: (types_match, single_use): New functions.
* gimple-match-head.c: (types_match, single_use): New functions.
* gcc.dg/tree-ssa/shorten-1.c: New test.
From-SVN: r222877
2015-05-07 07:18:07 -06:00
Venkataramanan Kumar
963ba1b266
combine.c (make_compound_operation): Remove checks for PLUS/MINUS rtx type.
...
2015-05-07 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
* combine.c (make_compound_operation): Remove checks for PLUS/MINUS
rtx type.
From-SVN: r222874
2015-05-07 10:47:54 +00:00
Richard Biener
465770e439
re PR tree-optimization/66002 (paq8p benchmark 50% slower than clang on sandybridge)
...
2015-05-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/66002
* passes.def: Schedule another pass_merge_phi after ifcombine, right
before phiopt.
* gcc.dg/vect/vect-125.c: New testcase.
From-SVN: r222873
2015-05-07 09:52:38 +00:00
Marek Polacek
e0f0d3b9d2
c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member array-like members if...
...
* c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
flexible member array-like members if SANITIZE_BOUNDS_STRICT.
* doc/invoke.texi: Document -fsanitize=bounds-strict.
* flag-types.h (enum sanitize_code): Add SANITIZE_BOUNDS_STRICT, or it
into SANITIZE_NONDEFAULT.
* opts.c (common_handle_option): Handle -fsanitize=bounds-strict.
* c-c++-common/ubsan/bounds-10.c: New test.
From-SVN: r222871
2015-05-07 08:08:57 +00:00
Uros Bizjak
ad2c39af63
re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
...
PR target/66015
* config/alpha/alpha.c (alpha_override_options_after_change): New.
(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New.
(alpha_override_options): Move align_loops, align_jumps and
align_functions handling into alpha_override_options_after_change.
From-SVN: r222870
2015-05-07 09:34:29 +02:00
GCC Administrator
06cb4b647a
Daily bump.
...
From-SVN: r222869
2015-05-07 00:16:16 +00:00
Ian Lance Taylor
87bde062dd
compiler: Analyze escape information of interface parameters.
...
When analyzing function calls with interface parameters, all arguments
related to an interface parameter were assumed to escape via the
function arguments. Now, if an argument is related to a non-escaping
parameter with an interface type, the argument may be stack-allocated.
From-SVN: r222865
2015-05-06 22:59:54 +00:00
Thomas Koenig
f1abbf6901
re PR fortran/37131 (inline matmul for small matrix sizes)
...
2015-05-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* gfortran.h (gfc_isym_id): Add GFC_ISYM_FE_RUNTIME_ERROR.
(gfc_intrinsic_sym): Add vararg.
* intrinsic.h (gfc_check_fe_runtime_error): Add prototype.
(gfc_resolve_re_runtime_error): Likewise.
Add prototype for gfc_is_reallocatable_lhs.
* trans-array.h (gfc_is_reallocatable_lhs): Remove prototype.
* check.c (gfc_check_fe_runtime_error): New function.
* intrinsic.c (add_sym_1p): New function.
(make_vararg): New function.
(add_subroutines): Add fe_runtime_error.
(gfc_intrinsic_sub_interface): Skip sorting for variable number
of arguments.
* iresolve.c (gfc_resolve_fe_runtime_error): New function.
* lang.opt (inline-matmul-limit): New option.
(gfc_post_options): If no inline matmul limit has been set and
BLAS is called externally, use the BLAS limit.
* frontend-passes.c: Include intrinsic.h.
(var_num): New global counter for naming temporary variablbles.
(matrix_case): Enum for differentiating the different matmul
cases.
(realloc_string_callback): Add "trim" to the variable name.
(create_var): Add optional argument vname as part of the name.
Use var_num. Set dimension of result correctly. Split off block
creation into
(insert_block): New function.
(cfe_expr_0): Use "fcn" as part of temporary variable name.
(optimize_namesapce): Also set gfc_current_ns. Call
inline_matmul_assign.
(combine_array_constructor): Use "constr" as part of
temporary name.
(get_array_inq_function): New function.
(build_logical_expr): New function.
(get_operand): new function.
(inline_limit_check): New function.
(runtime_error_ne): New function.
(matmul_lhs_realloc): New function.
(is_functino_or_op): New function.
(has_function_or_op): New function.
(freeze_expr): New function.
(freeze_references): New function.
(convert_to_index_kind): New function.
(create_do_loop): New function.
(get_size_m1): New function.
(scalarized_expr): New function.
(inline_matmul_assign): New function.
* simplify.c (simplify_bound): Simplify the case of the
lower bound of an assumed-shape argument.
2015-05-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* gfortran.dg/dependency_26.f90: Add option to suppress inlining
matmul.
* gfortran.dg/function_optimize_1.f90: Likewise.
* gfortran.dg/function_optimize_2.f90: Likewise.
* gfortran.dg/function_optimize_5.f90: Likewise.
* gfortran.dg/function_optimize_7.f90: Likewise.
* gfortran.dg/inline_matmul_1.f90: New test.
* gfortran.dg/inline_matmul_2.f90: New test.
* gfortran.dg/inline_matmul_3.f90: New test.
* gfortran.dg/inline_matmul_4.f90: New test.
* gfortran.dg/inline_matmul_5.f90: New test.
* gfortran.dg/inline_matmul_6.f90: New test.
From-SVN: r222864
2015-05-06 20:23:48 +00:00
David Malcolm
5631585aa6
jit: add test-benchmark.c
...
gcc/testsuite/ChangeLog:
* jit.dg/harness.h (set_options): Wrap with
#ifndef TEST_ESCHEWS_SET_OPTIONS.
* jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer):
Special-case test-benchmark.c as a negative.
* jit.dg/test-benchmark.c: New file.
From-SVN: r222863
2015-05-06 20:13:50 +00:00
Julian Brown
d2463960a4
oacc-init.c (acc_device_lock): Add explanatory comment.
...
* oacc-init.c (acc_device_lock): Add explanatory comment.
(resolve_device): Add comment about locking requirement.
(acc_init_1, acc_shutdown_1): Likewise. Add locking around
gomp_init_device and gomp_fini_device calls.
(acc_get_num_devices, acc_set_device_type, acc_get_device_type)
(acc_get_device_num, acc_set_device_num): Add locking around
resolve_device and gomp_init_device calls.
From-SVN: r222862
2015-05-06 19:10:14 +00:00
Julian Brown
e38fdba42b
oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for goacc_thread_lock on error paths.
...
* oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
goacc_thread_lock on error paths.
* oacc-mem.c (lookup_host): Remove locking from function. Note
locking requirement for caller in function comment.
(lookup_dev): Likewise.
(acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
(acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
(update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
Add locking.
From-SVN: r222860
2015-05-06 16:45:49 +00:00
Sandra Loosemore
5a0ff57c48
unknown-elf.h (STARTFILE_SPEC): Add conditional linking of crtfastmath.o.
...
2015-05-06 Sandra Loosemore <sandra@codesourcery.com>
Chris Jones <chrisj@nvidia.com>
Joshua Conner <jconner@nvidia.com>
gcc/
* config/arm/unknown-elf.h (STARTFILE_SPEC): Add conditional
linking of crtfastmath.o.
* config/arm/linux-eabi.h (STARTFILE_SPEC): Likewise.
libgcc/
* config.host (arm*-*-linux*): Add support for crtfastmath.o.
(arm*-*-uclinux*): Likewise.
(arm*-*-eabi* | arm*-*-rtems*): Likewise.
* config/arm/crtfastmath.c: New file.
Co-Authored-By: Chris Jones <chrisj@nvidia.com>
Co-Authored-By: Joshua Conner <jconner@nvidia.com>
From-SVN: r222857
2015-05-06 12:01:05 -04:00
Segher Boessenkool
29e597d0e6
rs6000.md (cstore<mode>4_signed_imm): New expander.
...
* config/rs6000/rs6000.md (cstore<mode>4_signed_imm): New expander.
(cstore<mode>4_unsigned_imm): New expander.
(cstore<mode>4): Remove empty constraint strings. Use the new
expanders.
From-SVN: r222855
2015-05-06 17:55:10 +02:00
Yvan Roux
93e956161e
re PR target/64208 ([iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90))
...
gcc/
2015-05-06 Yvan Roux <yvan.roux@linaro.org>
PR target/64208
* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Cleanup redundant
alternatives.
gcc/testsuite/
2015-05-06 Yvan Roux <yvan.roux@linaro.org>
PR target/64208
* gcc.target/arm/pr64208.c: New test.
From-SVN: r222853
2015-05-06 14:23:57 +00:00
Szabolcs Nagy
2149da1b26
[AArch64] Fix geniterators.sh to use standard BRE syntax in sed
...
On behalf of Szabolcs Nagy.
2015-05-06 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/aarch64/geniterators.sh: Use standard BRE in sed.
From-SVN: r222852
2015-05-06 13:23:01 +00:00
Alan Modra
d5e6e133bb
re PR target/66033 (rs6000 nops removed by rtl_dce)
...
PR target/66033
* config/rs6000/rs6000.md (nop): Use an unspec pattern.
(UNSPEC_NOP): Define.
(reload_vsx_from_gpr<mode>): Add missing DONE.
(reload_gpr_from_vsx<mode>): Likewise.
* config/rs6000/vsx.md (vsx_mul_v2di): Likewise.
(vsx_div_v2di, vsx_udiv_v2di): Likewise.
From-SVN: r222851
2015-05-06 22:42:19 +09:30
Alan Modra
2ed81af483
re PR target/66020 (FAIL: gcc.target/powerpc/ppc64-abi-2.c execution test)
...
PR target/66020
* gcc.target/powerpc/ppc64-abi-2.c (my_mcount): Rewrite.
(gparms): Make volatile.
From-SVN: r222850
2015-05-06 22:40:59 +09:30
Richard Biener
ccd8556454
re PR fortran/62283 (basic-block vectorization fails)
...
2015-05-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/62283
* gcc.dg/vect/bb-slp-32.c: Remove XFAIL.
From-SVN: r222849
2015-05-06 12:21:01 +00:00
Christian Bruel
487edc878f
re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
...
2015-05-06 Christian Bruel <christian.bruel@st.com>
PR target/66015
* config/aarch64/aarch64.c (aarch64_override_options): Move align_loops,
align_jumps, align_functions into aarch64_override_options_after_change.
From-SVN: r222847
2015-05-06 12:54:40 +02:00
Richard Biener
240a94da04
tree-vect-slp.c (vect_supported_load_permutation_p): Use vect_transform_slp_perm_load to check if...
...
2015-05-06 Richard Biener <rguenther@suse.de>
* tree-vect-slp.c (vect_supported_load_permutation_p): Use
vect_transform_slp_perm_load to check if we support a permutation
for basic-block vectorization.
* gcc.dg/vect/bb-slp-34.c: New testcase.
From-SVN: r222846
2015-05-06 10:49:35 +00:00
Nick Clifton
edbb33c795
rl78.c (need_to_save): Save register 22 if it is used, even if it is not being used as a frame pointer.
...
* config/rl78/rl78.c (need_to_save): Save register 22 if it is
used, even if it is not being used as a frame pointer.
From-SVN: r222845
2015-05-06 10:19:07 +00:00
Richard Biener
c88718a925
re PR fortran/62283 (basic-block vectorization fails)
...
2015-05-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/62283
* gcc.dg/vect/bb-slp-14.c: Adjust.
From-SVN: r222843
2015-05-06 06:47:38 +00:00
Jason Merrill
8243e2a9d0
c.opt (Wterminate): New.
...
gcc/c-family/
* c.opt (Wterminate): New.
gcc/cp/
* cp-gimplify.c (cp_genericize_r): Track TRY_BLOCK and
MUST_NOT_THROW_EXPR, warn about a THROW_EXPR directly within a
MUST_NOT_THROW_EXPR.
(cp_genericize_data): Add try_block field.
(cp_genericize_tree): Initialize it.
* except.c (expand_end_catch_block): Set TREE_NO_WARNING on
implicit rethrow.
From-SVN: r222842
2015-05-05 22:25:01 -04:00
Jason Merrill
81b6a6c55b
Fix obj-c++.dg/encode-10.mm with cxx_dialect == cxx11.
...
* constexpr.c (potential_constant_expression_1) [AT_ENCODE_EXPR]:
Return false.
From-SVN: r222841
2015-05-05 22:24:49 -04:00
Jason Merrill
32ad49af4c
Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
...
Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
* semantics.c (finish_call_expr): Check complain.
From-SVN: r222840
2015-05-05 22:24:44 -04:00
Jason Merrill
15ed2619b2
Fix gdb.cp/anon-struct.cc with -std=c++11.
...
gcc/
* dwarf2out.c (gen_member_die): Don't emit anything for an
anonymous class constructor.
gcc/cp/
* decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
maybe-in-charge constructor.
From-SVN: r222839
2015-05-05 22:24:38 -04:00
Jason Merrill
f8aa3dd388
decl.c (start_decl): Don't push the plain VAR_DECL for a variable template.
...
* decl.c (start_decl): Don't push the plain VAR_DECL for a
variable template.
From-SVN: r222837
2015-05-05 22:07:40 -04:00
Jason Merrill
b8dd691344
DR 1518 DR 1630 PR c++/54835 PR c++/60417
...
DR 1518
DR 1630
PR c++/54835
PR c++/60417
* call.c (convert_like_real): Check value-initialization before
explicit.
* typeck2.c (process_init_constructor_record): Don't set
CONSTRUCTOR_IS_DIRECT_INIT.
(process_init_constructor_array): Likewise.
* init.c (build_vec_init): Likewise.
From-SVN: r222836
2015-05-05 22:07:34 -04:00
GCC Administrator
99573e81e8
Daily bump.
...
From-SVN: r222834
2015-05-06 00:16:15 +00:00
Joseph Myers
c72f37e6ae
* sv.po: Update.
...
From-SVN: r222829
2015-05-05 22:30:18 +01:00
Ian Lance Taylor
5003ddad85
compiler: Don't make temporaries for constant string concatentation.
...
Fixes golang/go#10642 .
From-SVN: r222828
2015-05-05 20:56:59 +00:00