renlin [Thu, 15 Jan 2015 10:15:50 +0000 (10:15 +0000)]
Fix oversized bitfield warning.
testsuite/
2015-01-15 Matthew Wahab <matthew.wahab@arm.com>
* g++.dg/torture/
20141013.C: Set -fno-short-enums.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219637
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Thu, 15 Jan 2015 09:53:55 +0000 (09:53 +0000)]
Target optimization nodes: add support for arrays.
PR target/64377
* optc-save-gen.awk: Add support for array types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219636
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 15 Jan 2015 08:41:08 +0000 (08:41 +0000)]
2015-01-15 Richard Biener <rguenther@suse.de>
PR middle-end/64365
* tree-data-ref.c (dr_analyze_indices): Make sure that accesses
for MEM_REF access functions with the same base can never partially
overlap.
* gcc.dg/torture/pr64365.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219634
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 15 Jan 2015 05:29:12 +0000 (05:29 +0000)]
2015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
* common.opt: New option -fstack-protector-explicit.
* cfgexpand.c (SPCT_FLAG_EXPLICIT): New enum.
(stack_protect_decl_phase): Handle stack_protect attribute for
explicit stack protection requests.
(expand_used_vars): Similarly.
* doc/cpp.texi (__SSP_EXPLICIT__): Document predefined macro.
* doc/extend.texi: Add documentation for "stack_protect" attribute.
* doc/invoke.texi: Add documentation for -fstack-protector-explicit.
* c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
for the new option fstack-protector_explicit.
* c-common.c (c_common_attribute_table): Add stack_protect attribute.
(handle_stack_protect_attribute): New function.
* gcc.dg/stackprotectexplicit1.c: New test.
* g++.dg/stackprotectexplicit2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219633
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 15 Jan 2015 04:06:02 +0000 (04:06 +0000)]
2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR target/61933
* gfortran.dg/inquire_internal.f90: New.
* gfortran.dg/negative_unit_check.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219632
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 15 Jan 2015 03:57:29 +0000 (03:57 +0000)]
2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/61933
* io/inquire.c (inquire_via_unit): Set existing to true if a
gfc_unit stucture was found for the given unit number.
* runtime/error.c (translate_error): Add case for
LIBERROR_INQUIRE_INTERNAL_UNIT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219631
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 15 Jan 2015 03:51:16 +0000 (03:51 +0000)]
2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/61933
* io.c (gfc_match_inquire): Generate error if unit number in
inquire statement is a constant -1. All other values allowed.
* trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
(create_dummy_iostat): Delete function no longer used.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219630
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 15 Jan 2015 00:52:38 +0000 (00:52 +0000)]
libgo: Bump version number in libgo configure script.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219629
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 15 Jan 2015 00:40:25 +0000 (00:40 +0000)]
Add files somehow left out of last commit (upgrade to Go 1.4).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219628
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 15 Jan 2015 00:27:56 +0000 (00:27 +0000)]
libgo, compiler: Upgrade libgo to Go 1.4, except for runtime.
This upgrades all of libgo other than the runtime package to
the Go 1.4 release. In Go 1.4 much of the runtime was
rewritten into Go. Merging that code will take more time and
will not change the API, so I'm putting it off for now.
There are a few runtime changes anyhow, to accomodate other
packages that rely on minor modifications to the runtime
support.
The compiler changes slightly to add a one-bit flag to each
type descriptor kind that is stored directly in an interface,
which for gccgo is currently only pointer types. Another
one-bit flag (gcprog) is reserved because it is used by the gc
compiler, but gccgo does not currently use it.
There is another error check in the compiler since I ran
across it during testing.
gotools/:
* Makefile.am (go_cmd_go_files): Sort entries. Add generate.go.
* Makefile.in: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219627
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 15 Jan 2015 00:17:03 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219626
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Wed, 14 Jan 2015 23:46:34 +0000 (23:46 +0000)]
gcc/
PR target/53988
* config/sh/sh-protos.h (sh_find_set_of_reg): Add option to ignore
reg-reg copies.
(sh_extending_set_of_reg): New struct.
(sh_find_extending_set_of_reg, sh_split_tst_subregs,
sh_remove_reg_dead_or_unused_notes): New Declarations.
* config/sh/sh.c (sh_remove_reg_dead_or_unused_notes,
sh_find_extending_set_of_reg, sh_split_tst_subregs,
sh_extending_set_of_reg::use_as_extended_reg): New functions.
* config/sh/sh.md (*tst<mode>_t_zero): Rename to *tst<mode>_t_subregs,
convert to insn_and_split and use new function sh_split_tst_subregs.
gcc/testsuite/
PR target/53988
* gcc.target/sh/pr53988-1.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219623
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Wed, 14 Jan 2015 23:09:03 +0000 (23:09 +0000)]
2015-01-14 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (Option Summary): Reclassify -fuse-ld as a linker
option.
(Optimization Options): Move -fuse-ld documentation to...
(Link Options): ...here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219622
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 14 Jan 2015 22:28:07 +0000 (22:28 +0000)]
/cp
2015-01-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58671
* decl2.c (var_defined_without_dynamic_init): Handle gracefully
self-initialization.
/testsuite
2015-01-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58671
* g++.dg/tls/thread_local-ice3.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219621
138bc75d-0d04-0410-961f-
82ee72b054a4
mpf [Wed, 14 Jan 2015 22:10:21 +0000 (22:10 +0000)]
Fix indentation in an earlier gcc/ChangeLog update
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219620
138bc75d-0d04-0410-961f-
82ee72b054a4
mpf [Wed, 14 Jan 2015 22:08:37 +0000 (22:08 +0000)]
[MIPS] Update the ZC constraint.
gcc/
* config/mips/constraints.md (ZC): Add support for R6 LL/SC
offsets.
(ZD): Update to use ISA_HAS_9BIT_DISPLACEMENT.
* config/mips/mips.h (ISA_HAS_PREFETCH_9BIT): Rename to...
(ISA_HAS_9BIT_DISPLACEMENT): ... this. New macro.
* config/mips/sync.md (sync_compare_and_swap<mode>): Use ZC
instead of ZR for the memory operand of LL/SC.
(compare_and_swap_12, sync_add<mode>): Likewise.
(sync_<optab>_12, sync_old_<optab>_12): Likewise.
(sync_new_<optab>_12, sync_nand_12): Likewise.
(sync_old_nand_12, sync_new_nand_12): Likewise.
(sync_sub<mode>, sync_old_add<mode>): Likewise.
(sync_old_sub<mode>, sync_new_add<mode>): Likewise.
(sync_new_sub<mode>, sync_<optab><mode>): Likewise.
(sync_old_<optab><mode>, sync_new_<optab><mode>"): Likewise.
(sync_nand<mode>, sync_old_nand<mode>): Likewise.
(sync_new_nand<mode>, sync_lock_test_and_set<mode>): Likewise.
(test_and_set_12, atomic_compare_and_swap<mode>): Likewise.
(atomic_exchange<mode>_llsc, atomic_fetch_add<mode>_llsc): Likewise.
* doc/md.texi (ZC): Update description.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219619
138bc75d-0d04-0410-961f-
82ee72b054a4
jbglaw [Wed, 14 Jan 2015 21:55:35 +0000 (21:55 +0000)]
Pull libiberty.h copyright update from Binutils
2015-12-14 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* libiberty.h: Merge Copyright year update from Binutils.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219617
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 14 Jan 2015 21:51:09 +0000 (21:51 +0000)]
Correct target selector in -mfentry tests
-fprofile -mfentry works with PIE if gcrt1.o is compiled with -fPIC. A
glibc has been filed, PR 17836, and a glibc patch has been submitted.
* gcc.target/i386/fentry-override.c: Properly place {} in target
selector. Remove nonpic.
* gcc.target/i386/fentry.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219616
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 14 Jan 2015 21:30:39 +0000 (21:30 +0000)]
2015-01-14 Andrew MacLeod <amacleod@redhat.com>
* builtins.c (expand_builtin_atomic_exchange): Remove error when
memory model is CONSUME.
(expand_builtin_atomic_compare_exchange, expand_builtin_atomic_load,
expand_builtin_atomic_store): Change invalid memory model errors to
warnings.
(expand_builtin_atomic_clear): Change invalid model errors to warnings
and issue warning for CONSUME.
* testsuite/gcc.dg/atomic-invalid.c: Check for invalid memory model
warnings instead of errors.
M gcc/ChangeLog
M gcc/builtins.c
M gcc/testsuite/ChangeLog
M gcc/testsuite/gcc.dg/atomic-invalid.c
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219615
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Wed, 14 Jan 2015 16:37:15 +0000 (16:37 +0000)]
+ * lto-cgraph: Update function comments for
+ lto_symtab_encoder_encode_*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219607
138bc75d-0d04-0410-961f-
82ee72b054a4
iverbin [Wed, 14 Jan 2015 15:51:37 +0000 (15:51 +0000)]
gcc/
* Makefile.in (site.exp): Do not set ENABLE_LTO.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_lto): Check for -flto
option support instead of ENABLE_LTO from Makefile.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219606
138bc75d-0d04-0410-961f-
82ee72b054a4
iverbin [Wed, 14 Jan 2015 15:15:21 +0000 (15:15 +0000)]
gcc/
* cgraphunit.c (ipa_passes): Remove argument from ipa_write_summaries.
* lto-cgraph.c (select_what_to_stream): Remove argument, use
lto_stream_offload_p instead.
* lto-streamer.h (select_what_to_stream): Remove argument.
* passes.c (ipa_write_summaries): Likewise.
* tree-pass.h (ipa_write_summaries): Likewise.
gcc/lto/
* lto-partition.c (lto_promote_cross_file_statics): Remove argument
from select_what_to_stream.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219605
138bc75d-0d04-0410-961f-
82ee72b054a4
tocarip [Wed, 14 Jan 2015 14:23:47 +0000 (14:23 +0000)]
Fix year in ChangeLog.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219604
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Jan 2015 14:06:07 +0000 (14:06 +0000)]
2015-01-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/59354
* tree-vect-slp.c (vect_build_slp_tree_1): Treat loads from
groups larger than the slp group size as having gaps.
* gcc.dg/vect/pr59354.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219603
138bc75d-0d04-0410-961f-
82ee72b054a4
ams [Wed, 14 Jan 2015 14:03:10 +0000 (14:03 +0000)]
Fix neon test fails on non-neon configs.
gcc/testsuite/
* lib/target-supports.exp
(check_effective_target_arm_neon_ok_nocache): Don't try to test Neon
on ARM architures before v7.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219602
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 14 Jan 2015 13:58:35 +0000 (13:58 +0000)]
2015-01-14 Andrew MacLeod <amacleod@redhat.com>
PR middle-end/59448
* builtins.c (get_memmodel): Promote consume to acquire always.
* testsuite/gcc.dg/atomic-invalid.c: Remove obselete test for illegal
consume in an atomic_exchange.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219601
138bc75d-0d04-0410-961f-
82ee72b054a4
tocarip [Wed, 14 Jan 2015 13:55:06 +0000 (13:55 +0000)]
PR target/64386
gcc/
PR target/64386
* config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode,
V32HImode.
testsuite/
* gcc.target/i386/pr64386.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219600
138bc75d-0d04-0410-961f-
82ee72b054a4
tocarip [Wed, 14 Jan 2015 13:49:58 +0000 (13:49 +0000)]
PR target/64393
gcc/
* common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VBMI_SET):
Enable AVX512BW.
(OPTION_MASK_ISA_AVX512BW_UNSET): Disable AVX512VBMI.
* config/i386/i386.c (ix86_hard_regno_mode_ok): Don't check
AVX512VBMI, as it implies AVX512BW.
testsuite/
* gcc.target/i386/pr64393.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219599
138bc75d-0d04-0410-961f-
82ee72b054a4
tocarip [Wed, 14 Jan 2015 13:45:49 +0000 (13:45 +0000)]
PR target/64387
gcc/
* config/i386/sse.md (vec_unpacks_hi_v8sf): Fix predicate.
(vec_unpacks_hi_v16sf): Ditto.
testsuite/
* gcc.target/i386/pr64387.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219598
138bc75d-0d04-0410-961f-
82ee72b054a4
clyon [Wed, 14 Jan 2015 12:07:43 +0000 (12:07 +0000)]
2015-01-14 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/store-pair-1.c: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219595
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 14 Jan 2015 12:03:22 +0000 (12:03 +0000)]
[AArch64] Error out of arm_neon.h if nofp/nosimd
* config/aarch64/arm_neon.h: Error out if AdvancedSIMD
is not available.
* gcc.target/aarch64/arm_neon-nosimd-error.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219594
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 14 Jan 2015 11:58:06 +0000 (11:58 +0000)]
[doc][ARM] Deprecate -mapcs and -mapcs-frame.
* doc/invoke.texi (mapcs): Mention deprecation.
(mapcs-frame): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219593
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Wed, 14 Jan 2015 11:51:40 +0000 (11:51 +0000)]
2015-01-14 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
PR target/64453
* config/arm/arm.c (callee_saved_reg_p): Define.
(arm_compute_save_reg0_reg12_mask): Use callee_saved_reg_p to check if
register is callee saved instead of !call_used_regs[reg].
(thumb1_compute_save_reg_mask): Likewise.
gcc/testsuite/
PR target/64453
* gcc.target/arm/pr64453.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219592
138bc75d-0d04-0410-961f-
82ee72b054a4
halewang [Wed, 14 Jan 2015 11:15:30 +0000 (11:15 +0000)]
2015-01-14 Hale Wang <hale.wang@arm.com>
* config/arm/arm.c: Tune the max_cond_insns/branch_cost for
Cortex-M7.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219589
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Jan 2015 11:06:18 +0000 (11:06 +0000)]
2015-01-14 Richard Biener <rguenther@suse.de>
PR lto/64415
* tree-inline.c (insert_debug_decl_map): Check destination
function MAY_HAVE_DEBUG_STMTS.
(insert_init_debug_bind): Likewise.
(insert_init_stmt): Remove redundant check.
(remap_gimple_stmt): Drop debug stmts if the destination
function has var-tracking assignments disabled.
* gcc.dg/lto/pr64415_0.c: New testcase.
* gcc.dg/lto/pr64415_1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219588
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Wed, 14 Jan 2015 10:35:13 +0000 (10:35 +0000)]
IPA ICF: handle IMAGPART_EXPR and REALPART_EXPR.
* gcc.dg/ipa/pr64307.c: New test.
* ipa-icf-gimple.c (func_checker::compare_operand): Add support for
IMAGPART_EXPR and REALPART_EXPR and fix BIT_FIELD_REF comparison.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219586
138bc75d-0d04-0410-961f-
82ee72b054a4
belagod [Wed, 14 Jan 2015 10:29:09 +0000 (10:29 +0000)]
2015-01-14 Tejas Belagod <tejas.belagod@arm.com>
* gcc.target/aarch64/vect-movi.c: Check for vectorization for
64-bit and 128-bit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219585
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 14 Jan 2015 10:14:23 +0000 (10:14 +0000)]
[ARM] Fix PR target/64460: Set 'shift' attr properly on some patterns.
PR target/64460
* config/arm/arm.md (*<arith_shift_insn>_multsi): Set 'shift' to 2.
(*<arith_shift_insn>_shiftsi): Set 'shift' attr to 3.
* gcc.target/arm/pr64460_1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219583
138bc75d-0d04-0410-961f-
82ee72b054a4
mpf [Wed, 14 Jan 2015 08:35:52 +0000 (08:35 +0000)]
Fix Linux multilib configurations with default architectures
gcc/
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Only infer an ISA
level from an ARCH; do not inject the default.
(MIPS_DEFAULT_ISA_LEVEL_SPEC): New macro split out from
MIPS_ISA_LEVEL_SPEC.
(MIPS_ISA_NAN2008_SPEC): Update comment.
(BASE_DRIVER_SELF_SPECS): Likewise.
* config/mips/elfoabi.h (DRIVER_SELF_SPECS): Add
MIPS_DEFAULT_ISA_LEVEL_SPEC.
* config/mips/mti-elf.h (DRIVER_SELF_SPECS): Likewise.
* config/mips/mti-linux.h (DRIVER_SELF_SPECS): Likewise.
* config/mips/sde.h (DRIVER_SELF_SPECS): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219580
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 14 Jan 2015 08:32:18 +0000 (08:32 +0000)]
2015-01-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/64493
PR tree-optimization/64495
* tree-vect-loop.c (vect_finalize_reduction): For double-reductions
assign the proper vectorized PHI to the inner loop exit PHIs.
* gcc.dg/vect/pr64493.c: New testcase.
* gcc.dg/vect/pr64495.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219579
138bc75d-0d04-0410-961f-
82ee72b054a4
jye2 [Wed, 14 Jan 2015 08:17:15 +0000 (08:17 +0000)]
2015-01-14 Joey Ye <joey.ye@arm.com>
* config/arm/arm.c (arm_compute_save_reg_mask):
Do not save lr in case of tail call.
* config/arm/thumb2.md (*thumb2_pop_single): New pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219578
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 14 Jan 2015 06:50:19 +0000 (06:50 +0000)]
* tree-vrp.c (check_array_ref): Emit more warnings
for warn_array_bounds >= 2.
* common.opt: New option -Warray-bounds=.
* doc/invoke.texi: Document -Warray-bounds=.
* c.opt: New option -Warray-bounds=.
* gcc.dg/Warray-bounds-11.c: New test-case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219577
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Wed, 14 Jan 2015 06:08:35 +0000 (06:08 +0000)]
[NDS32] Remove some features and options that are not available yet in nds32 port of GNU binutils package.
gcc/
* config/nds32/nds32.opt (mforce-fp-as-gp): Remove.
(mforbid-fp-as-gp): Remove.
(mex9): Remove.
* config/nds32/nds32-fp-as-gp.c (nds32_have_prologue_p): Remove.
(nds32_symbol_load_store_p): Remove.
(nds32_fp_as_gp_check_available): Clean up implementation.
* config/nds32/nds32.h (LINK_SPEC): Remove -mforce-as-gp and -mex9
cases.
* config/nds32/nds32.c (nds32_asm_file_start): No need to consider
fp-as-gp and ex9 cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219576
138bc75d-0d04-0410-961f-
82ee72b054a4
naveenh [Wed, 14 Jan 2015 06:08:24 +0000 (06:08 +0000)]
* gcc.target/mips/octeon3-pipe-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219575
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 14 Jan 2015 05:28:50 +0000 (05:28 +0000)]
* tree-profile.c (init_ic_make_global_vars): Drop workaround
for bintuils bug 14342.
(init_ic_make_global_vars): Likewise.
(gimple_init_edge_profiler): Likewise.
(gimple_gen_ic_func_profiler): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219574
138bc75d-0d04-0410-961f-
82ee72b054a4
naveenh [Wed, 14 Jan 2015 05:10:44 +0000 (05:10 +0000)]
2015-01-15 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* ipa-inline.c (inline_small_functions): Swap the operands in
enum.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219573
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 14 Jan 2015 03:47:17 +0000 (03:47 +0000)]
PR ipa/64481
* ipa-inline-analysis.c (node_growth_cache): Remove.
(initialize_growth_caches): Do not initialize it.
(free_growth_caches): Do not free it.
(do_estimate_growth): Rename to ...
(estimate_growth): ... this one; drop growth cache code.
(growth_likely_positive): Always go the heuristics way.
* ipa-inline.c (can_inline_edge_p): Walk through aliases.
(reset_edge_caches): Do not reset node growth.
(heap_edge_removal_hook): Do not maintain cache.
(inline_small_functions): Likewise; strenghten sanity check.
(ipa_inline): Do not maintain caches.
* ipa-inline.h (node_growth_cache): Remove.
(do_estimate_growth): Remove to ...
(estimate_growth): this one; remove inline version.
(reset_node_growth_cache): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219572
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 14 Jan 2015 00:16:58 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219569
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Tue, 13 Jan 2015 23:30:33 +0000 (23:30 +0000)]
* libffi/configure.host: Remove extra brackets for sh.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219565
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Tue, 13 Jan 2015 22:14:46 +0000 (22:14 +0000)]
jit: New API entrypoint: gcc_jit_context_dump_reproducer_to_file
gcc/jit/ChangeLog:
* docs/cp/topics/contexts.rst (Debugging): Add
gccjit::context::dump_reproducer_to_file.
* docs/internals/index.rst (Design notes): New section,
discussing input validation and
gcc_jit_context_dump_reproducer_to_file.
* docs/topics/contexts.rst (Debugging): Add
gcc_jit_context_dump_reproducer_to_file.
* docs/_build/texinfo/libgccjit.texi: Regenerate.
* jit-common.h (gcc::jit::dump::get_context): New accessor.
* jit-recording.c: Include "hash-map.h".
Within namespace ::gcc::jit...
(dump::write): Flush each line.
(dump::make_location): Pass false for new param "created_by_user".
(class allocator): New class.
(allocator::~allocator): New function.
(allocator::xstrdup_printf): New function.
(allocator::xstrdup_printf_va): New function.
(class reproducer): New subclass of dump.
(reproducer::reproducer): New function.
(reproducer::write_params): New function.
(reproducer::write_args): New function.
(reproducer::make_identifier): New function.
(reproducer::make_tmp_identifier): New function.
(reproducer::get_identifier): New pair of functions.
(reproducer::get_identifier_as_rvalue): New function.
(reproducer::get_identifier_as_lvalue): New function.
(reproducer::get_identifier_as_type): New function.
(reproducer::xstrdup_printf): New function.
(recording::context::context): Initialize m_toplevel_ctxt.
(recording::context::new_location): Add param created_by_user.
(str_option_reproducer_strings): New table of strings.
(int_option_reproducer_strings): Likewise.
(bool_option_reproducer_strings): Likewise.
(get_type_enum_strings): Likewise.
(names_of_function_kinds): Likewise.
(global_kind_reproducer_strings): Likewise.
(unary_op_reproducer_strings): Likewise.
(binary_op_reproducer_strings): Likewise.
(comparison_reproducer_strings): Likewise.
Within namespace ::gcc::jit::recording::...
(context::dump_reproducer_to_file): New function.
(string::write_reproducer): Likewise.
(location::write_reproducer): Likewise.
(type::access_as_type): Likewise.
(memento_of_get_type::write_reproducer): Likewise.
(memento_of_get_pointer::write_reproducer): Likewise.
(memento_of_get_const::write_reproducer): Likewise.
(memento_of_get_volatile::write_reproducer): Likewise.
(array_type::write_reproducer): Likewise.
(function_type::write_reproducer): Likewise.
(function_type::write_deferred_reproducer): Likewise.
(field::write_reproducer): Likewise.
(struct_::access_as_type): Likewise.
(struct_::write_reproducer): Likewise.
(union_::write_reproducer): Likewise.
(fields::write_reproducer): Likewise.
(rvalue::access_as_rvalue): Likewise.
(lvalue::access_as_rvalue): Likewise.
(lvalue::access_as_lvalue): Likewise.
(param::access_as_rvalue): Likewise.
(param::access_as_lvalue): Likewise.
(param::write_reproducer): Likewise.
(function::write_reproducer): Likewise.
(block::write_reproducer): Likewise.
(global::write_reproducer): Likewise.
(memento_of_new_rvalue_from_const <int>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <long>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <double>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <void *>::write_reproducer):
Likewise.
(memento_of_new_string_literal::write_reproducer): Likewise.
(unary_op::write_reproducer): Likewise.
(binary_op::write_reproducer): Likewise.
(comparison::write_reproducer): Likewise.
(cast::write_reproducer): Likewise.
(call::write_reproducer): Likewise.
(call_through_ptr::write_reproducer): Likewise.
(array_access::write_reproducer): Likewise.
(access_field_of_lvalue::write_reproducer): Likewise.
(access_field_rvalue::write_reproducer): Likewise.
(dereference_field_rvalue::write_reproducer): Likewise.
(dereference_rvalue::write_reproducer): Likewise.
(get_address_of_lvalue::write_reproducer): Likewise.
(local::write_reproducer): Likewise.
(eval::write_reproducer): Likewise.
(assignment::write_reproducer): Likewise.
(assignment_op::write_reproducer): Likewise.
(comment::write_reproducer): Likewise.
(conditional::write_reproducer): Likewise.
(jump::write_reproducer): Likewise.
(return_::write_reproducer): Likewise.
* jit-recording.h (gcc::jit::reproducer): New forward declararion.
Within namespace ::gcc::jit::recording::...
(context::new_location): Add "created_by_user" param.
(context::dump_reproducer_to_file): New method.
(context::m_toplevel_ctxt): New field.
(memento::write_reproducer): New pure virtual function.
(memento::dyn_cast_location): New virtual function.
(string::write_reproducer):
(location::location): Add "created_by_user" param.
(location::dyn_cast_location): New function.
(location::created_by_user): New accessor.
(location::write_reproducer): New function.
(location::m_created_by_user): New field.
(type::access_as_type): New virtual function.
(location::write_reproducer): Likewise.
(type::access_as_type): Likewise.
(memento_of_get_type::write_reproducer): Likewise.
(memento_of_get_pointer::write_reproducer): Likewise.
(memento_of_get_const::write_reproducer): Likewise.
(memento_of_get_volatile::write_reproducer): Likewise.
(array_type::write_reproducer): Likewise.
(function_type::write_reproducer): Likewise.
(function_type::write_deferred_reproducer): Likewise.
(field::write_reproducer): Likewise.
(struct_::access_as_type): Likewise.
(struct_::write_reproducer): Likewise.
(union_::write_reproducer): Likewise.
(union_::m_fields): Remove stray unused field.
(fields::length): New accessor.
(fields::get_field): New accessor.
(fields::write_reproducer): New function.
(rvalue::access_as_rvalue): Likewise.
(lvalue::access_as_rvalue): Likewise.
(lvalue::access_as_lvalue): Likewise.
(param::access_as_rvalue): Likewise.
(param::access_as_lvalue): Likewise.
(param::write_reproducer): Likewise.
(function::write_reproducer): Likewise.
(block::write_reproducer): Likewise.
(global::write_reproducer): Likewise.
(memento_of_new_rvalue_from_const <HOST_TYPE>::write_reproducer):
Likewise.
(memento_of_new_string_literal::write_reproducer): Likewise.
(unary_op::write_reproducer): Likewise.
(binary_op::write_reproducer): Likewise.
(comparison::write_reproducer): Likewise.
(cast::write_reproducer): Likewise.
(call::write_reproducer): Likewise.
(call_through_ptr::write_reproducer): Likewise.
(array_access::write_reproducer): Likewise.
(access_field_of_lvalue::write_reproducer): Likewise.
(access_field_rvalue::write_reproducer): Likewise.
(dereference_field_rvalue::write_reproducer): Likewise.
(dereference_rvalue::write_reproducer): Likewise.
(get_address_of_lvalue::write_reproducer): Likewise.
(local::write_reproducer): Likewise.
(eval::write_reproducer): Likewise.
(assignment::write_reproducer): Likewise.
(assignment_op::write_reproducer): Likewise.
(comment::write_reproducer): Likewise.
(conditional::write_reproducer): Likewise.
(jump::write_reproducer): Likewise.
(return_::write_reproducer): Likewise.
* libgccjit++.h (gccjit::context::dump_reproducer_to_file): New.
* libgccjit.c (gcc_jit_context_new_location): Pass "true" as
param "created_by_user".
(gcc_jit_context_dump_reproducer_to_file): New API entrypoint.
* libgccjit.h (gcc_jit_context_dump_reproducer_to_file): New API
entrypoint.
* libgccjit.map (gcc_jit_context_dump_reproducer_to_file): New API
entrypoint.
gcc/testsuite/ChangeLog:
* jit.dg/harness.h (set_up_logging): Move string concatenation
into...
(concat_strings): New function.
(dump_reproducer): New function.
(test_jit): Call dump_reproducer.
* jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer): New
function.
(jit-dg-test): Delete any generated reproducer from previous runs.
Verify that a generated reproducer was created, and verify that it
compiles.
* jit.dg/test-nested-contexts.c (main): Call
gcc_jit_context_dump_reproducer_to_file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219564
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 13 Jan 2015 21:24:16 +0000 (21:24 +0000)]
Add dg-require-profiling to gcc.dg/aru-2.c
* gcc.dg/aru-2.c: Add dg-require-profiling.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219561
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 13 Jan 2015 21:13:36 +0000 (21:13 +0000)]
Check if -pg links in check_profiling_available
* lib/target-supports.exp (check_profiling_available): Check if
-pg links.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219560
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 13 Jan 2015 21:04:43 +0000 (21:04 +0000)]
PR c++/64356
PR libstdc++/58777
* constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT
pointer expressions.
(cxx_eval_increment_expression): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219559
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 13 Jan 2015 21:04:35 +0000 (21:04 +0000)]
PR c++/64514
* pt.c (coerce_template_parameter_pack): Return NULL for a
zero-length fixed parameter pack with a pack expansion arg.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219558
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 13 Jan 2015 21:04:28 +0000 (21:04 +0000)]
PR c++/64520
* pt.c (unify): Don't try to deduce to std::initializer_list<T...>.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219557
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 13 Jan 2015 20:59:37 +0000 (20:59 +0000)]
PR ipa/64565
* g++.dg/torture/pr64565.C: New testcase.
* ipa-inline.c (inline_small_functions): Update callee keys after
resolving speculation
(inline_small_functions): Always check monotonicity of the queue.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219556
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Tue, 13 Jan 2015 20:22:32 +0000 (20:22 +0000)]
PR middle-end/64391
* trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE.
* gcc.dg/tm/pr64391.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219555
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 13 Jan 2015 20:07:33 +0000 (20:07 +0000)]
Support PIE in gcc.dg/tree-ssa/ssa-store-ccp-3.c
target nonpic is always false for -fPIE since it defines both __PIC__
and __PIE__. This patch changes gcc.dg/tree-ssa/ssa-store-ccp-3.c to
make it to pass with -fPIE by excluding PIE when nonpic is true.
* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Exclude pie when nonpic is
true.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219554
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 13 Jan 2015 20:05:41 +0000 (20:05 +0000)]
Add check_effective_target_pie
* gcc.target/i386/pie.c: New test.
* lib/target-supports.exp (check_effective_target_pie): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219553
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Jan 2015 19:12:47 +0000 (19:12 +0000)]
PR rtl-optimization/64286
* ree.c (combine_reaching_defs): Move part of comment earlier,
remove !SCALAR_INT_MODE_P check.
(add_removable_extension): Don't add vector mode
extensions if all uses of the source register aren't the same
vector extensions.
* gcc.target/i386/avx2-pr64286.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219550
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 13 Jan 2015 17:19:32 +0000 (17:19 +0000)]
2015-01-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57626
* g++.dg/cpp0x/vt-57626.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219546
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Jan 2015 17:01:30 +0000 (17:01 +0000)]
* sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick
upstream r224518 and r224519.
* tsan/tsan_rtl_thread.cc: Cherry pick upstream r224702 and
r224834.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219545
138bc75d-0d04-0410-961f-
82ee72b054a4
renlin [Tue, 13 Jan 2015 16:47:30 +0000 (16:47 +0000)]
[ARM]Make CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO return 2.
gcc/
* config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
(CTZ_DEFINED_VALUE_AT_ZERO): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219544
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Jan 2015 16:42:22 +0000 (16:42 +0000)]
PR fortran/64528
* trans-decl.c (create_function_arglist): Don't set TREE_READONLY
on dummy args with VALUE attribute.
* gfortran.dg/pr64528.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219543
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Tue, 13 Jan 2015 16:30:23 +0000 (16:30 +0000)]
Option diff dump is added for target and optimization
* ipa-icf.c (sem_function::equals_private): Call new functions
cl_target_option_print_diff and cl_optimization_print_diff.
* optc-save-gen.awk (cl_target_option_print_diff): New function.
(cl_optimization_print_diff): Likewise.
* opth-gen.awk: Likewise.
M gcc/ChangeLog
M gcc/ipa-icf.c
M gcc/optc-save-gen.awk
M gcc/opth-gen.awk
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219542
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 13 Jan 2015 15:57:27 +0000 (15:57 +0000)]
Set TARGET to X86_64 if __x86_64__ is defined
PR bootstrap/64575
* configure.host (TARGET): Set to X86_64 if __x86_64__ is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219539
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Jan 2015 15:29:47 +0000 (15:29 +0000)]
PR libffi/64572
* src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
(FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219538
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Tue, 13 Jan 2015 14:56:50 +0000 (14:56 +0000)]
PR libstdc++/64571
* config/abi/pre/gnu.ver: Export fstream functions using new string.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219537
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 13 Jan 2015 14:11:15 +0000 (14:11 +0000)]
gcc/
* config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3)
(*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw)
(*sub_<optab><ALLX:mode>_shft_<GPI:mode>)
(*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2)
(*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2)
(*sub_uxtsi_multp2_uxtw): Add stack pointer sources.
gcc/testsuite/
* gcc.target/aarch64/subsp.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219533
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Tue, 13 Jan 2015 14:08:21 +0000 (14:08 +0000)]
\1a2015-01-13 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64.c (fusion_load_store): Check dest mode
instead of src mode.
2015-01-13 Andrew Pinski <apinski@cavium.com>
* gcc.target/aarch64/store-pair-1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219532
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 13 Jan 2015 13:57:27 +0000 (13:57 +0000)]
2015-01-13 Richard Biener <rguenther@suse.de>
PR lto/64373
* lto-streamer-out.c (tree_is_indexable): Guard for NULL
DECL_CONTEXT.
* gcc.dg/lto/pr64373_0.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219531
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Tue, 13 Jan 2015 13:55:23 +0000 (13:55 +0000)]
2015-01-13 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject
volatile mems.
(aarch64_operands_adjust_ok_for_ldpstp): Likewise.
2015-01-13 Andrew Pinski <apinski@cavium.com>
* gcc.target/aarch64/volatileloadpair-1.c: New testcase.
* gcc.target/aarch64/volatileloadpair-2.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219530
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Jan 2015 13:44:06 +0000 (13:44 +0000)]
PR middle-end/63974
* cfgexpand.c (expand_computed_goto): Don't call
convert_memory_address here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219529
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 13 Jan 2015 13:41:46 +0000 (13:41 +0000)]
2015-01-13 Richard Biener <rguenther@suse.de>
PR tree-optimization/64406
* tree-loop-distibution.c (pass_loop_distribution::execute):
Reset the SCEV hashtable if we distributed anything.
* gcc.dg/pr64406.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219528
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 13 Jan 2015 12:35:27 +0000 (12:35 +0000)]
2015-01-13 Richard Biener <rguenther@suse.de>
PR tree-optimization/64404
* tree-vect-stmts.c (vectorizable_load): Reject conflicting
SLP types for CSEd loads.
* gcc.dg/vect/pr64404.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219527
138bc75d-0d04-0410-961f-
82ee72b054a4
iains [Tue, 13 Jan 2015 11:23:46 +0000 (11:23 +0000)]
update to add myself to Objective-c/c++ maintainers
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219526
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Tue, 13 Jan 2015 11:23:01 +0000 (11:23 +0000)]
2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
PR tree-optimization/64436
* tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the
merge of two symbolic numbers for a bitwise OR to ...
(perform_symbolic_merge): This. Also fix computation of the range and
end of the symbolic number corresponding to the result of a bitwise OR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219525
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Tue, 13 Jan 2015 09:08:35 +0000 (09:08 +0000)]
Add self as C front end reviewer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219523
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 13 Jan 2015 08:32:13 +0000 (08:32 +0000)]
2014-01-13 Richard Biener <rguenther@suse.de>
PR tree-optimization/64568
* tree-ssa-forwprop.c (pass_forwprop::execute): Properly
release defs of removed stmts, avoid splitting TARGET_MEM_REFs.
* g++.dg/torture/pr64568.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219520
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 13 Jan 2015 08:23:31 +0000 (08:23 +0000)]
PR libgcj/64219
* Makefile.am (install-data-local): Use just the major version
from GCJVERSION instead of major.minor.
* Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219519
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 06:06:34 +0000 (06:06 +0000)]
[NDS32] Consider -mcmodel=X in nds32_legitimate_address_p implementation.
gcc/
* config/nds32/nds32.c (nds32_legitimate_address_p): Consider
TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219515
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 05:59:03 +0000 (05:59 +0000)]
[NDS32] Implement TARGET_ENCODE_SECTION_INFO to store specific flag in symbol_ref rtx.
gcc/
* config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own
target-specific symbol_ref flag.
(NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref
resides in rodata section.
* config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define.
(nds32_encode_section_info): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219514
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 13 Jan 2015 05:41:11 +0000 (05:41 +0000)]
* MAINTAINERS: Remove Stan Shebs as he has been inactive for
a very long time.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219513
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 05:37:07 +0000 (05:37 +0000)]
[NDS32] Consider TARGET_CMODEL_LARGE for function call instructions.
gcc/
* config/nds32/nds32.md (call): Use pseudo instruction bal which
clobbers TA_REGNUM if large code model is specified.
(call_register): Likewise.
(call_immediate): Likewise.
(call_value): Likewise.
(call_value_register): Likewise.
(call_value_immediate): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219512
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 05:32:08 +0000 (05:32 +0000)]
[NDS32] Provide TARGET_CMODEL_[SMALL|MEDIUM|LARGE] to check which code model is specified.
gcc/
* config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro.
(TARGET_CMODEL_MEDIUM): New macro.
(TARGET_CMODEL_LARGE): New macro.
* config/nds32/nds32.c (nds32_asm_file_start): Display corresponding
code model setting in assembly code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219511
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 05:22:25 +0000 (05:22 +0000)]
[NDS32] Remove -mgp-direct/-mno-gp-direct options.
gcc/
* common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS):
Remove MASK_GP_DIRECT flag.
* config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as
one of the multilib default options.
* config/nds32/nds32.opt (mgp-direct): Remove.
* config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of
-mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219510
138bc75d-0d04-0410-961f-
82ee72b054a4
jasonwucj [Tue, 13 Jan 2015 05:17:54 +0000 (05:17 +0000)]
[NDS32] Add -mcmodel= option to support different code model.
* config/nds32/nds32.opt (mcmodel): Add new option.
* config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type
to describe code model.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219509
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Tue, 13 Jan 2015 00:30:57 +0000 (00:30 +0000)]
gcc/
PR target/64479
* rtlanal.c (set_reg_p): Handle SEQUENCE constructs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219506
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 13 Jan 2015 00:26:31 +0000 (00:26 +0000)]
Fix libjava failures on i686-linux
* src/x86/ffi.c (ffi_raw_call): Fill in frame.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219505
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 13 Jan 2015 00:16:50 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219503
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Mon, 12 Jan 2015 23:47:58 +0000 (23:47 +0000)]
* Add TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook for sh.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219500
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Mon, 12 Jan 2015 22:25:37 +0000 (22:25 +0000)]
libgccjit: detect various kinds of errors relating to params and locals
gcc/jit/ChangeLog:
* jit-recording.c (class gcc::jit::rvalue_usage_validator): New.
(gcc::jit::rvalue_usage_validator::rvalue_usage_validator): New
ctor.
(gcc::jit::rvalue_usage_validator::visit): New function.
(gcc::jit::recording::rvalue::verify_valid_within_stmt): New
function.
(gcc::jit::recording::rvalue::set_scope): New function.
(gcc::jit::recording::function::function): Call set_scope on each
param, issuing errors for any params that already have a function.
(gcc::jit::recording::block::add_eval): Return the new statement;
update the comment given that some error-checking now happens after
this returns.
(gcc::jit::recording::block::add_assignment): Likewise.
(gcc::jit::recording::block::add_assignment_op): Likewise.
(gcc::jit::recording::block::add_comment): Likewise.
(gcc::jit::recording::block::end_with_conditional): Likewise.
(gcc::jit::recording::block::end_with_jump): Likewise.
(gcc::jit::recording::block::end_with_return): Likewise.
(gcc::jit::recording::block::validate): Add a comment.
(gcc::jit::recording::unary_op::visit_children): New function.
(gcc::jit::recording::binary_op::visit_children): New function.
(gcc::jit::recording::comparison::visit_children): New function.
(gcc::jit::recording::cast::visit_children): New function.
(gcc::jit::recording::call::visit_children): New function.
(gcc::jit::recording::call_through_ptr::visit_children): New function.
(gcc::jit::recording::array_access::visit_children): New function.
(gcc::jit::recording::access_field_of_lvalue::visit_children): New
function.
(gcc::jit::recording::access_field_rvalue::visit_children): New
function.
(gcc::jit::recording::dereference_field_rvalue::visit_children):
New function.
(gcc::jit::recording::dereference_rvalue::visit_children): New
function.
(gcc::jit::recording::get_address_of_lvalue::visit_children): New
function.
* jit-recording.h: Within namespace gcc::jit::recording...
(class rvalue_visitor): New.
(rvalue::rvalue): Initialize m_scope.
(rvalue::get_loc): New accessor.
(rvalue::verify_valid_within_stmt): New function.
(rvalue::visit_children): New pure virtual function.
(rvalue::set_scope): New function.
(rvalue::get_scope): New function.
(rvalue::dyn_cast_param): New function.
(rvalue::m_scope): New field.
(param::visit_children): New empty function.
(param::dyn_cast_param): New function.
(function::get_loc): New function.
(block::add_eval): Return the new statement.
(block::add_assignment): Likewise.
(block::add_assignment_op): Likewise.
(block::add_comment): Likewise.
(block::end_with_conditional): Likewise.
(block::end_with_jump): Likewise.
(block::end_with_return): Likewise.
(global::visit_children): New function.
(memento_of_new_rvalue_from_const<HOST_TYPE>::visit_children):
New function.
(memento_of_new_string_literal::visit_children): New function.
(unary_op::visit_children): New function.
(binary_op::visit_children): New function.
(comparison::visit_children): New function.
(cast::visit_children): New function.
(call::visit_children): New function.
(call_through_ptr::visit_children): New function.
(array_access::visit_children): New function.
(access_field_of_lvalue::visit_children): New function.
(access_field_rvalue::visit_children): New function.
(dereference_field_rvalue::visit_children): New function.
(dereference_rvalue::visit_children): New function.
(get_address_of_lvalue::visit_children): New function.
(local::local): Call set_scope.
(local::visit_children): New function.
(statement::get_block): Make public.
* libgccjit.c (RETURN_VAL_IF_FAIL_PRINTF5): New macro.
(RETURN_NULL_IF_FAIL_PRINTF5): New macro.
(gcc_jit_context_new_function): Verify that each param has
not yet been used for creating another function.
(gcc_jit_block_add_eval): After creating the stmt, verify
that the rvalue expression tree is valid to use within it.
(gcc_jit_block_add_assignment): Likewise for the lvalue and
rvalue expression trees.
(gcc_jit_block_add_assignment_op): Likewise.
(gcc_jit_block_end_with_conditional): Likewise for the boolval
expression tree.
(gcc_jit_block_end_with_return): Likewise for the rvalue
expression tree.
(gcc_jit_block_end_with_void_return): Remove return of "void",
now that block::end_with_return is now non-void.
gcc/testsuite/ChangeLog:
* jit.dg/test-error-local-used-from-other-function.c: New test
case.
* jit.dg/test-error-param-reuse.c: New test case.
* jit.dg/test-error-param-sharing.c: New test case.
* jit.dg/test-error-param-used-from-other-function.c: New test
case.
* jit.dg/test-error-param-used-without-a-function.c: New test
case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219498
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Mon, 12 Jan 2015 21:57:54 +0000 (21:57 +0000)]
2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi ([-Wsuggest-attribute=]): Don't use parentheses
after a funtion name just to indicate it is a function.
([-fsanitize-undefined-trap-on-error]): Likewise.
([-fdbg-cnt=]): Likewise.
([-mmemcpy]): Likewise.
([-mflush-func]): Likewise.
([-msynci]): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219497
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 12 Jan 2015 21:45:50 +0000 (21:45 +0000)]
PR libstdc++/64553
* src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219496
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 12 Jan 2015 21:45:44 +0000 (21:45 +0000)]
PR libstdc++/64560
* src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
for RTTI support.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219495
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Mon, 12 Jan 2015 21:32:53 +0000 (21:32 +0000)]
2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi ([-Wbad-function-cast]): Rewrite to avoid confusing
example.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219494
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 12 Jan 2015 20:48:09 +0000 (20:48 +0000)]
PR tree-optimization/64563
* tree-vrp.c (vrp_evaluate_conditional): Check for VR_RANGE
instead of != VR_VARYING.
* gcc.dg/pr64563.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219493
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 12 Jan 2015 20:45:38 +0000 (20:45 +0000)]
PR target/64513
* config/i386/i386.c (ix86_expand_prologue): Add
REG_FRAME_RELATED_EXPR to %rax and %r10 pushes.
* gcc.target/i386/pr64513.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219492
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 12 Jan 2015 20:44:32 +0000 (20:44 +0000)]
PR tree-optimization/64454
* tree-vrp.c (simplify_div_or_mod_using_ranges): Optimize
op0 % op1 into op0 if op0 is in range [-op1 + 1, op1 - 1]
for signed or [0, op1 - 1] for unsigned modulo.
(simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
even if op1 does not satisfy integer_pow2p.
* gcc.dg/pr64454.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219491
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 12 Jan 2015 20:30:53 +0000 (20:30 +0000)]
PR testsuite/64028
* gcc.dg/vect/no-section-anchors-vect-31.c: Add dg-add-options
bind_pic_locally.
* gcc.dg/vect/no-section-anchors-vect-34.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-36.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-64.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-65.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-68.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-69.c: Likewise.
* gcc.dg/vect/slp-25.c: Likewise.
* gcc.dg/vect/vect-109.c: Likewise.
* gcc.dg/vect/vect-13.c: Likewise.
* gcc.dg/vect/vect-17.c: Likewise.
* gcc.dg/vect/vect-18.c: Likewise.
* gcc.dg/vect/vect-19.c: Likewise.
* gcc.dg/vect/vect-20.c: Likewise.
* gcc.dg/vect/vect-21.c: Likewise.
* gcc.dg/vect/vect-22.c: Likewise.
* gcc.dg/vect/vect-27.c: Likewise.
* gcc.dg/vect/vect-29.c: Likewise.
* gcc.dg/vect/vect-2-big-array.c: Likewise.
* gcc.dg/vect/vect-2.c: Likewise.
* gcc.dg/vect/vect-3.c: Likewise.
* gcc.dg/vect/vect-4.c: Likewise.
* gcc.dg/vect/vect-5.c: Likewise.
* gcc.dg/vect/vect-72.c: Likewise.
* gcc.dg/vect/vect-73-big-array.c: Likewise.
* gcc.dg/vect/vect-73.c: Likewise.
* gcc.dg/vect/vect-77-global.c: Likewise.
* gcc.dg/vect/vect-78-global.c: Likewise.
* gcc.dg/vect/vect-7.c: Likewise.
* gcc.dg/vect/vect-86.c: Likewise.
* gcc.dg/vect/vect-align-1.c: Likewise.
* gcc.dg/vect/vect-align-3.c: Likewise.
* gcc.dg/vect/vect-all-big-array.c: Likewise.
* gcc.dg/vect/vect-all.c: Likewise.
* gcc.dg/vect/vect-multitypes-1.c: Likewise.
* gcc.dg/vect/vect-multitypes-4.c: Likewise.
* gcc.dg/vect/vect-peel-3.c: Likewise.
* gcc.dg/vect/vect-peel-4.c: Likewise.
* gcc.dg/vect/wrapv-vect-7.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219490
138bc75d-0d04-0410-961f-
82ee72b054a4