platform/upstream/linaro-gcc.git
10 years agoAdd clobber_reg
vries [Fri, 25 Apr 2014 11:21:40 +0000 (11:21 +0000)]
Add clobber_reg

2014-04-25  Tom de Vries  <tom@codesourcery.com>

* expr.c (clobber_reg_mode): New function.
* expr.h (clobber_reg): New function.

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

10 years agoRegister CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets
vries [Fri, 25 Apr 2014 11:21:29 +0000 (11:21 +0000)]
Register CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets

2014-04-25  Tom de Vries  <tom@codesourcery.com>

* rtlanal.c (find_all_hard_reg_sets): Note INSN_CALL_FUNCTION_USAGE
clobbers.

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

10 years agoAdd implicit parameter to find_all_hard_reg_sets
vries [Fri, 25 Apr 2014 11:21:18 +0000 (11:21 +0000)]
Add implicit parameter to find_all_hard_reg_sets

2014-04-25  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* rtlanal.c (find_all_hard_reg_sets): Add bool implicit parameter and
handle.
* rtl.h (find_all_hard_reg_sets): Add bool parameter.
* haifa-sched.c (recompute_todo_spec, check_clobbered_conditions): Add
new argument to find_all_hard_reg_sets call.

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

10 years ago[ARM] Wrap long literals in HOST_WIDE_INT_C in aarch-common.c
ktkachov [Fri, 25 Apr 2014 11:09:03 +0000 (11:09 +0000)]
[ARM] Wrap long literals in HOST_WIDE_INT_C in aarch-common.c

       * config/arm/aarch-common.c (aarch_rev16_shright_mask_imm_p):
       Use HOST_WIDE_INT_C for mask literal.
       (aarch_rev16_shleft_mask_imm_p): Likewise.

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

10 years ago PR c/18079
mpolacek [Fri, 25 Apr 2014 11:04:40 +0000 (11:04 +0000)]
PR c/18079
c/
* c-decl.c (diagnose_mismatched_decls): Warn for mismatched
always_inline/noinline and hot/cold attributes.
c-family/
* c-common.c (handle_noinline_attribute): Warn if the attribute
conflicts with always_inline attribute.
(handle_always_inline_attribute): Warn if the attribute conflicts
with noinline attribute.
testsuite/
* gcc.dg/pr18079.c: New test.
* gcc.dg/pr18079-2.c: New test.

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

10 years ago * c-c++-common/gomp/pr60823-2.c: Require effective target
uros [Fri, 25 Apr 2014 10:51:24 +0000 (10:51 +0000)]
* c-c++-common/gomp/pr60823-2.c: Require effective target
vect_simd_clones.

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

10 years ago PR c/60114
mpolacek [Fri, 25 Apr 2014 10:49:56 +0000 (10:49 +0000)]
PR c/60114
c/
* c-parser.c (c_parser_initelt): Pass input_location to
process_init_element.
(c_parser_initval): Pass loc to process_init_element.
* c-tree.h (process_init_element): Adjust declaration.
* c-typeck.c (push_init_level): Pass input_location to
process_init_element.
(pop_init_level): Likewise.
(set_designator): Likewise.
(output_init_element): Add location_t parameter.  Pass loc to
digest_init.
(output_pending_init_elements): Pass input_location to
output_init_element.
(process_init_element): Add location_t parameter.  Pass loc to
output_init_element.
testsuite/
* gcc.dg/pr60114.c: New test.

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

10 years ago PR target/60941
ebotcazou [Fri, 25 Apr 2014 10:39:14 +0000 (10:39 +0000)]
PR target/60941
* config/sparc/sparc.md (ashlsi3_extend): Delete.

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

10 years ago2014-04-25 Marc Glisse <marc.glisse@inria.fr>
glisse [Fri, 25 Apr 2014 09:23:15 +0000 (09:23 +0000)]
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

PR preprocessor/56540
* config/i386/i386-c.c (ix86_target_macros): Define
__SIZEOF_FLOAT80__ and __SIZEOF_FLOAT128__.

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

10 years ago PR c/60156
mpolacek [Fri, 25 Apr 2014 08:22:47 +0000 (08:22 +0000)]
PR c/60156
* c-common.c (check_main_parameter_types): Warn about variadic main.

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

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

10 years ago2014-04-25 Marc Glisse <marc.glisse@inria.fr>
glisse [Fri, 25 Apr 2014 08:20:24 +0000 (08:20 +0000)]
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

* testsuite/util/testsuite_abi.cc (check_version): Update for
CXXABI_1.3.9.

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

10 years agoRemove LIB_TLS_SPEC on Solaris
ro [Fri, 25 Apr 2014 08:08:41 +0000 (08:08 +0000)]
Remove LIB_TLS_SPEC on Solaris

* configure.ac (tga_func): Remove.
(LIB_TLS_SPEC): Remove.
* configure: Regenerate.
* config.in: Regenerate.
* config/sol2.h (LIB_SPEC): Don't use LIB_TLS_SPEC.

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

10 years ago2014-04-25 Marc Glisse <marc.glisse@inria.fr>
glisse [Fri, 25 Apr 2014 08:03:08 +0000 (08:03 +0000)]
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

PR target/43538
* mt-gnu: Don't reset CXXFLAGS_FOR_TARGET.

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

10 years agoRemove SSE execution test in crtfastmath.c
ro [Fri, 25 Apr 2014 08:01:09 +0000 (08:01 +0000)]
Remove SSE execution test in crtfastmath.c

* config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__]
(sigill_caught, sigill_hdlr): Remove.

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

10 years ago2014-04-25 Richard Biener <rguenther@suse.de>
rguenth [Fri, 25 Apr 2014 07:47:22 +0000 (07:47 +0000)]
2014-04-25  Richard Biener  <rguenther@suse.de>

PR ipa/60912
* tree-ssa-structalias.c (ipa_pta_execute): Compute direct
call stmt use/clobber sets during stmt walk instead of
walking the possibly incomplete set of caller edges.

* g++.dg/opt/pr60912.C: New testcase.

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

10 years ago2014-04-25 Richard Biener <rguenther@suse.de>
rguenth [Fri, 25 Apr 2014 07:44:40 +0000 (07:44 +0000)]
2014-04-25  Richard Biener  <rguenther@suse.de>

PR ipa/60911
* passes.c (apply_ipa_transforms): Inline into only caller ...
(execute_one_pass): ... here.  Properly bring in function
bodies for nodes we want to apply IPA transforms to.

* gcc.dg/lto/pr60911_0.c: New testcase.

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

10 years ago PR go/60931
ian [Fri, 25 Apr 2014 04:29:07 +0000 (04:29 +0000)]
PR go/60931

runtime: Fix garbage collector issue with non 4kB system page size

The go garbage collector tracks memory in terms of 4kB pages.
Most of the code checks getpagesize() at runtime and does the
right thing.

On a 64kB ppc64 box I see SEGVs in long running processes
which has been diagnosed as a bug in scavengelist.
scavengelist does a madvise(MADV_DONTNEED) without rounding
the arguments to the system page size.  A strace of one of the
failures shows the problem:

madvise(0xc211030000, 4096, MADV_DONTNEED) = 0

The kernel rounds the length up to 64kB and we mark 60kB of
valid data as no longer needed.

Round start up to a system page and end down before calling
madvise.

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

10 years ago * c.opt (Wshadow-ivar): Default to on.
mrs [Fri, 25 Apr 2014 00:53:34 +0000 (00:53 +0000)]
* c.opt (Wshadow-ivar): Default to on.

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

10 years ago2014-04-24 Cong Hou <congh@google.com>
congh [Fri, 25 Apr 2014 00:20:44 +0000 (00:20 +0000)]
2014-04-24  Cong Hou  <congh@google.com>

    PR tree-optimization/60896
    * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Pick up
    all statements in PATTERN_DEF_SEQ in recognized widen-mult pattern.
    (vect_mark_pattern_stmts): Set the def type of all statements in
    PATTERN_DEF_SEQ as vect_internal_def.

2014-04-24  Cong Hou  <congh@google.com>

    PR tree-optimization/60896
    * g++.dg/vect/pr60896.cc: New test.

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

10 years agoDaily bump.
gccadmin [Fri, 25 Apr 2014 00:16:40 +0000 (00:16 +0000)]
Daily bump.

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

10 years ago[gcc]
meissner [Thu, 24 Apr 2014 22:42:25 +0000 (22:42 +0000)]
[gcc]
2014-04-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

* doc/extend.texi (PowerPC Built-in Functions): Document new
powerpc extended divide, bcd, pack/unpack 128-bit, builtin
functions.
(PowerPC AltiVec/VSX Built-in Functions): Likewise.

* config/rs6000/predicates.md (const_0_to_3_operand): New
predicate to match 0..3 integer constants.

* config/rs6000/rs6000-builtin.def (BU_DFP_MISC_1): Add new macros
to support adding miscellaneous builtin functions.
(BU_DFP_MISC_2): Likewise.
(BU_P7_MISC_1): Likewise.
(BU_P7_MISC_2): Likewise.
(BU_P8V_MISC_3): Likewise.
(BU_MISC_1): Likewise.
(BU_MISC_2): Likewise.
(DIVWE): Add extended divide builtin functions.
(DIVWEO): Likewise.
(DIVWEU): Likewise.
(DIVWEUO): Likewise.
(DIVDE): Likewise.
(DIVDEO): Likewise.
(DIVDEU): Likewise.
(DIVDEUO): Likewise.
(DXEX): Add decimal floating-point builtin functions.
(DXEXQ): Likewise.
(DDEDPD): Likewise.
(DDEDPDQ): Likewise.
(DENBCD): Likewise.
(DENBCDQ): Likewise.
(DIEX): Likewise.
(DIEXQ): Likewise.
(DSCLI): Likewise.
(DSCLIQ): Likewise.
(DSCRI): Likewise.
(DSCRIQ): Likewise.
(CDTBCD): Add new BCD builtin functions.
(CBCDTD): Likewise.
(ADDG6S): Likewise.
(BCDADD): Likewise.
(BCDADD_LT): Likewise.
(BCDADD_EQ): Likewise.
(BCDADD_GT): Likewise.
(BCDADD_OV): Likewise.
(BCDSUB): Likewise.
(BCDSUB_LT): Likewise.
(BCDSUB_EQ): Likewise.
(BCDSUB_GT): Likewise.
(BCDSUB_OV): Likewise.
(PACK_TD): Add new pack/unpack 128-bit type builtin functions.
(UNPACK_TD): Likewise.
(PACK_TF): Likewise.
(UNPACK_TF): Likewise.
(UNPACK_TF_0): Likewise.
(UNPACK_TF_1): Likewise.
(PACK_V1TI): Likewise.
(UNPACK_V1TI): Likewise.

* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Add
support for decimal floating point builtin functions.
(rs6000_expand_ternop_builtin): Add checks for the new builtin
functions that take constant arguments.
(rs6000_invalid_builtin): Add decimal floating point builtin
support.
(rs6000_init_builtins): Setup long double, _Decimal64, and
_Decimal128 types for new builtin functions.
(builtin_function_type): Set the unsigned flags appropriately for
the new builtin functions.
(rs6000_opt_masks): Add support for decimal floating point builtin
functions.

* config/rs6000/rs6000.h (RS6000_BTM_DFP): Add support for decimal
floating point builtin functions.
(RS6000_BTM_COMMON): Likewise.
(RS6000_BTI_long_double): Likewise.
(RS6000_BTI_dfloat64): Likewise.
(RS6000_BTI_dfloat128): Likewise.
(long_double_type_internal_node): Likewise.
(dfloat64_type_internal_node): Likewise.
(dfloat128_type_internal_node): Likewise.

* config/rs6000/altivec.h (UNSPEC_BCDADD): Add support for ISA
2.07 bcd arithmetic instructions.
(UNSPEC_BCDSUB): Likewise.
(UNSPEC_BCD_OVERFLOW): Likewise.
(UNSPEC_BCD_ADD_SUB): Likewise.
(bcd_add_sub): Likewise.
(BCD_TEST): Likewise.
(bcd<bcd_add_sub>): Likewise.
(bcd<bcd_add_sub>_test): Likewise.
(bcd<bcd_add_sub>_test2): Likewise.
(bcd<bcd_add_sub>_<code>): Likewise.
(peephole2 for combined bcd ops): Likewise.

* config/rs6000/dfp.md (UNSPEC_DDEDPD): Add support for new
decimal floating point builtin functions.
(UNSPEC_DENBCD): Likewise.
(UNSPEC_DXEX): Likewise.
(UNSPEC_DIEX): Likewise.
(UNSPEC_DSCLI): Likewise.
(UNSPEC_DSCRI): Likewise.
(D64_D128): Likewise.
(dfp_suffix): Likewise.
(dfp_ddedpd_<mode>): Likewise.
(dfp_denbcd_<mode>): Likewise.
(dfp_dxex_<mode>): Likewise.
(dfp_diex_<mode>): Likewise.
(dfp_dscli_<mode>): Likewise.
(dfp_dscri_<mode>): Likewise.

* config/rs6000/rs6000.md (UNSPEC_ADDG6S): Add support for new BCD
builtin functions.
(UNSPEC_CDTBCD): Likewise.
(UNSPEC_CBCDTD): Likewise.
(UNSPEC_DIVE): Add support for new extended divide builtin
functions.
(UNSPEC_DIVEO): Likewise.
(UNSPEC_DIVEU): Likewise.
(UNSPEC_DIVEUO): Likewise.
(UNSPEC_UNPACK_128BIT): Add support for new builtin functions to
pack/unpack 128-bit types.
(UNSPEC_PACK_128BIT): Likewise.
(idiv_ldiv): New mode attribute to set the 32/64-bit divide type.
(udiv<mode>3): Use idiv_ldiv mode attribute.
(div<mode>3): Likewise.
(addg6s): Add new BCD builtin functions.
(cdtbcd): Likewise.
(cbcdtd): Likewise.
(UNSPEC_DIV_EXTEND): Add support for new extended divide
instructions.
(div_extend): Likewise.
(div<div_extend>_<mode>"): Likewise.
(FP128_64): Add support for new builtin functions to pack/unpack
128-bit types.
(unpack<mode>): Likewise.
(unpacktf_0): Likewise.
(unpacktf_1): Likewise.
(unpack<mode>_dm): Likewise.
(unpack<mode>_nodm): Likewise.
(pack<mode>): Likewise.
(unpackv1ti): Likewise.
(packv1ti): Likewise.

[gcc/testsuite]
2014-04-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/pack01.c: New test to test the new pack and
unpack builtin functionss for 128-bit types.
* gcc.target/powerpc/pack02.c: Likewise.
* gcc.target/powerpc/pack03.c: Likewise.
* gcc.target/powerpc/extend-divide-1.c: New test to test extended
divide builtin functionss.
* gcc.target/powerpc/extend-divide-2.c: Likewise.
* gcc.target/powerpc/bcd-1.c: New test for the new BCD builtin
functions.
* gcc.target/powerpc/bcd-2.c: Likewise.
* gcc.target/powerpc/bcd-3.c: Likewise.
* gcc.target/powerpc/dfp-builtin-1.c: New test for the new DFP
builtin functionss.
* gcc.target/powerpc/dfp-builtin-2.c: Likewise.

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

10 years ago2014-04-24 Vishnu K S <Vishnu.k_s@atmel.com>
law [Thu, 24 Apr 2014 22:05:07 +0000 (22:05 +0000)]
2014-04-24  Vishnu K S  <Vishnu.k_s@atmel.com>

* gcc/config/avr/avr.c: Add comment on why -fdelete-null-pointer-checks
is disabled.

2014-04-24  Vishnu K S  <Vishnu.k_s@atmel.com>

* gcc/testsuite/gcc.dg/tree-ssa/isolate-1.c: Skip test if
keeps_null_pointer_checks.
* gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c: Ditto
* gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c: Ditto
* gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c: Ditto
* gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c: Ditto

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

10 years ago * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
law [Thu, 24 Apr 2014 21:29:45 +0000 (21:29 +0000)]
    * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
        avoid goto.

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

10 years agogcc/c/
jakub [Thu, 24 Apr 2014 21:20:28 +0000 (21:20 +0000)]
gcc/c/
* c-parser.c (c_parser_omp_atomic): Allow seq_cst before
atomic-clause, allow comma in between atomic-clause and
seq_cst.
gcc/cp/
* parser.c (cp_parser_omp_atomic): Allow seq_cst before
atomic-clause, allow comma in between atomic-clause and
seq_cst.
gcc/testsuite/
* c-c++-common/gomp/atomic-16.c: Remove all dg-error directives.
Replace load with read and store with write.
libgomp/
* testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
atomic type clauses in any order and optional comma in between.
* testsuite/libgomp.c++/atomic-15.C: Likewise.
* testsuite/libgomp.c/atomic-17.c: Likewise.

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

10 years ago * tree.h (OMP_CLAUSE_LINEAR_GIMPLE_SEQ): Define.
jakub [Thu, 24 Apr 2014 21:17:32 +0000 (21:17 +0000)]
* tree.h (OMP_CLAUSE_LINEAR_GIMPLE_SEQ): Define.
* gimplify.c (omp_is_private): Change last argument's type to int.
Only diagnose lastprivate if the simd argument is 1, only diagnose
linear if the simd argument is 2.
(gimplify_omp_for): Adjust omp_is_private callers.  When adding
lastprivate or private, add the clause to OMP_FOR_CLAUSES.  Pass
GOVD_EXPLICIT to omp_add_variable.  For simd with collapse == 1
create OMP_CLAUSE_LINEAR rather than OMP_CLAUSE_PRIVATE for var.
If var != decl and decl is in OMP_CLAUSE_LINEAR, gimplify decl
increment to OMP_CLAUSE_LINEAR_GIMPLE_SEQ.
* omp-low.c (scan_sharing_clauses, lower_lastprivate_clauses): Handle
OMP_CLAUSE_LINEAR_GIMPLE_SEQ.
* tree-nested.c (convert_nonlocal_omp_clauses,
convert_local_omp_clauses): Handle OMP_CLAUSE_LINEAR.

* testsuite/libgomp.c/simd-7.c: New test.
* testsuite/libgomp.c/simd-8.c: New test.
* testsuite/libgomp.c/simd-9.c: New test.
* testsuite/libgomp.c/loop-16.c: New test.

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

10 years ago2014-04-24 Segher Boessenkool <segher@kernel.crashing.org>
law [Thu, 24 Apr 2014 20:45:10 +0000 (20:45 +0000)]
2014-04-24  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/60822
* config/m68k/m68k.md (extendplussidi): Don't allow memory for
operand 1.

2014-04-24  Jeff Law  <law@redhat.com>

PR target/60822
* gcc.c-torture/pr60822.c: New test.
* gcc.c-torture/pr60822.x: New test.

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

10 years agoadd recored to gcc/testsuite/ChangeLog for PR c++/57958
dinar [Thu, 24 Apr 2014 18:51:29 +0000 (18:51 +0000)]
add recored to gcc/testsuite/ChangeLog for PR c++/57958

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

10 years ago2014-04-24 Tim Shen <timshen91@gmail.com>
timshen [Thu, 24 Apr 2014 18:29:21 +0000 (18:29 +0000)]
2014-04-24  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
Do _M_alt before _M_next.
* testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.

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

10 years agoLink to bug report.
mrs [Thu, 24 Apr 2014 16:03:39 +0000 (16:03 +0000)]
Link to bug report.

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

10 years ago2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
mrs [Thu, 24 Apr 2014 15:58:44 +0000 (15:58 +0000)]
2014-04-24  Dimitris Papavasiliou  <dpapavas@gmail.com>

    * flag-types.h (enum ivar_visibility): Add.

c-family:
    * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.

objc:
* objc-act.c (objc_ivar_visibility, objc_default_ivar_visibility): Add.
(objc_init): Initialize objc_default_ivar_visibility.
(objc_start_class_interface): Use objc_default_ivar_visibility.
(objc_start_class_implementation): Likewise.
(objc_lookup_ivar): Implement -fno-local-ivars.

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

10 years ago2014-04-24 Jincheng Miao <jincheng.miao@gmail.com>
law [Thu, 24 Apr 2014 15:44:13 +0000 (15:44 +0000)]
2014-04-24  Jincheng Miao  <jincheng.miao@gmail.com>

* zh_CN.po: Fix typo for -mfentry.

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

10 years agofixup sh bustage after r209483
tbsaunde [Thu, 24 Apr 2014 15:33:30 +0000 (15:33 +0000)]
fixup sh bustage after r209483

When making pass::execute functions take a function * argument I missed
the sh_treg_combine pass, so fix that here.

gcc/
* config/sh/sh_treg_combine.c (sh_treg_combine::execute): Take
function * argument.

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

10 years ago[AArch64] Enable TBL for big-endian.
belagod [Thu, 24 Apr 2014 14:18:48 +0000 (14:18 +0000)]
[AArch64] Enable TBL for big-endian.

gcc/ChangeLog:
2014-04-11  Alan Lawrence  <alan.lawrence@arm.com>

* config/aarch64/aarch64.c (aarch64_evpc_tbl): Enable for bigendian.

gcc/testsuite/ChangeLog:
2014-04-11  Alan Lawrence  <alan.lawrence@arm.com>

* lib/target-supports.exp (check_effective_target_vect_perm): Return
true for aarch64_be.

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

10 years ago2014-04-24 Marc Glisse <marc.glisse@inria.fr>
glisse [Thu, 24 Apr 2014 13:58:36 +0000 (13:58 +0000)]
2014-04-24  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/43622
gcc/cp/
* rtti.c (emit_support_tinfos): Do not iterate on
registered_builtin_types (partial revert).
libstdc++/
* config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.

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

10 years agoFix warning in libgfortran configure script
ktkachov [Thu, 24 Apr 2014 11:03:56 +0000 (11:03 +0000)]
Fix warning in libgfortran configure script

* configure.ac: Quote usage of ac_cv_func_clock_gettime in if test.
* configure: Regenerate.

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

10 years agoUpdate libstdc++ baseline symbols for ia64
schwab [Thu, 24 Apr 2014 10:44:57 +0000 (10:44 +0000)]
Update libstdc++ baseline symbols for ia64

* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
new CXXABI_1.3.9 symbols.

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

10 years ago-fuse-caller-save - Add test-case
vries [Thu, 24 Apr 2014 10:27:16 +0000 (10:27 +0000)]
-fuse-caller-save - Add test-case

2014-04-24  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* gcc.dg/fuse-caller-save.c: New test.

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

10 years ago-fuse-caller-save - Add new reg-note REG_CALL_DECL
vries [Thu, 24 Apr 2014 09:34:15 +0000 (09:34 +0000)]
-fuse-caller-save - Add new reg-note REG_CALL_DECL

2014-04-24  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* reg-notes.def (REG_NOTE (CALL_DECL)): New reg-note REG_CALL_DECL.
* calls.c (expand_call, emit_library_call_value_1): Add REG_CALL_DECL
reg-note.
* combine.c (distribute_notes): Handle REG_CALL_DECL reg-note.
* emit-rtl.c (try_split): Same.

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

10 years ago-fuse-caller-save - Add command line option
vries [Thu, 24 Apr 2014 09:34:06 +0000 (09:34 +0000)]
-fuse-caller-save - Add command line option

2014-04-24  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* common.opt (fuse-caller-save): New option.

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

10 years ago[AArch64] Reverse TBL indices for big-endian.
belagod [Thu, 24 Apr 2014 09:08:48 +0000 (09:08 +0000)]
[AArch64] Reverse TBL indices for big-endian.

2014-04-24  Tejas Belagod  <tejas.belagod@arm.com>

       * config/aarch64/aarch64.c (aarch64_evpc_tbl): Reverse order of elements
       for big-endian.

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

10 years ago2014-04-24 Richard Biener <rguenther@suse.de>
rguenth [Thu, 24 Apr 2014 08:55:05 +0000 (08:55 +0000)]
2014-04-24  Richard Biener  <rguenther@suse.de>

* expr.c (expand_expr_real_1): Avoid gimple_assign_rhs_to_tree
during TER and instead use the sepops interface for expanding
non-GIMPLE_SINGLE_RHS.

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

10 years agoOnly redefine ASM_PREFERRED_EH_DATA_FORMAT if necessary on Solaris/x86
ro [Thu, 24 Apr 2014 08:48:34 +0000 (08:48 +0000)]
Only redefine ASM_PREFERRED_EH_DATA_FORMAT if necessary on Solaris/x86

* config/i386/sol2.h (ASM_PREFERRED_EH_DATA_FORMAT): Only redefine
if not HAVE_AS_IX86_DIFF_SECT_DELTA.

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

10 years agoFix gcc_cv_as_cfi_directive test for Solaris as
ro [Thu, 24 Apr 2014 08:38:06 +0000 (08:38 +0000)]
Fix gcc_cv_as_cfi_directive test for Solaris as

* configure.ac (gcc_cv_as_cfi_directive): Support Solaris/x86
assembler 64-bit option.
* configure: Regenerate.

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

10 years ago2014-04-24 Joey Ye <joey.ye@arm.com>
jye2 [Thu, 24 Apr 2014 08:24:37 +0000 (08:24 +0000)]
2014-04-24  Joey Ye  <joey.ye@arm.com>

        * g++.dg/cpp0x/nsdmi-union5.C: Change to runtime test.

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

10 years ago[AArch64] Wire up TARGET_SIMD and TARGET_FLOAT properly
ktkachov [Thu, 24 Apr 2014 08:22:43 +0000 (08:22 +0000)]
[AArch64] Wire up TARGET_SIMD and TARGET_FLOAT properly

* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Check
TARGET_SIMD rather than TARGET_GENERAL_REGS_ONLY.
(TARGET_SIMD): Take AARCH64_ISA_SIMD into account.
(TARGET_FLOAT): Take AARCH64_ISA_FP into account.
(TARGET_CRYPTO): Take TARGET_SIMD into account.

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

10 years ago[AArch64] Vectorise bswap[16,32,64]
ktkachov [Thu, 24 Apr 2014 08:05:07 +0000 (08:05 +0000)]
[AArch64] Vectorise bswap[16,32,64]

* config/aarch64/aarch64-builtins.c
(aarch64_builtin_vectorized_function): Handle BUILT_IN_BSWAP16,
BUILT_IN_BSWAP32, BUILT_IN_BSWAP64.
* config/aarch64/aarch64-simd.md (bswap<mode>): New pattern.
* config/aarch64/aarch64-simd-builtins.def: Define vector bswap
builtins.
* config/aarch64/iterator.md (VDQHSD): New mode iterator.
(Vrevsuff): New mode attribute.

* lib/target-supports.exp (check_effective_target_vect_bswap): New.
* gcc.dg/vect/vect-bswap16: New test.
* gcc.dg/vect/vect-bswap32: Likewise.
* gcc.dg/vect/vect-bswap64: Likewise.

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

10 years ago2014-04-24 Terry Guo <terry.guo@arm.com>
xguo [Thu, 24 Apr 2014 06:40:24 +0000 (06:40 +0000)]
2014-04-24  Terry Guo  <terry.guo@arm.com>

* config/arm/arm.h (machine_function): Define variable
after_arm_reorg here.
* config/arm/arm.c (after_arm_reorg): Remove the definition.
(arm_split_constant): Update the way to access variable
after_arm_reorg.
(arm_reorg): Ditto.
(arm_output_function_epilogue): Remove the reset of after_arm_reorg.

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

10 years ago2014-04-24 Laurynas Biveinis <laurynas.biveinis@gmail.com>
lauras [Thu, 24 Apr 2014 03:45:14 +0000 (03:45 +0000)]
2014-04-24  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* MAINTAINERS: Move myself from Reviewers to Write After Approval
section.

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

10 years agoDaily bump.
gccadmin [Thu, 24 Apr 2014 00:17:09 +0000 (00:17 +0000)]
Daily bump.

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

10 years agoFix DEFHOOKPOD argument order in target-hooks-macros.h comment
vries [Wed, 23 Apr 2014 21:29:08 +0000 (21:29 +0000)]
Fix DEFHOOKPOD argument order in target-hooks-macros.h comment

2014-04-23  Tom de Vries  <tom@codesourcery.com>

* target-hooks-macros.h: Fix DEFHOOKPOD argument order in comment.

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

10 years agoFix for c++/PR57958
dinar [Wed, 23 Apr 2014 19:34:08 +0000 (19:34 +0000)]
Fix for c++/PR57958

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

10 years agoChange is-a.h to support typedefs of pointers
dmalcolm [Wed, 23 Apr 2014 19:06:40 +0000 (19:06 +0000)]
Change is-a.h to support typedefs of pointers

gcc/
* is-a.h: Update comments to reflect the following changes to the
"pointerness" of the API, making the template parameter match the
return type, allowing use of is-a.h with typedefs of pointers.
(is_a_helper::cast): Return a T rather then a pointer to a T, so
that the return type matches the parameter to the is_a_helper.
(as_a): Likewise.
(dyn_cast): Likewise.

* cgraph.c (cgraph_node_for_asm): Update for removal of implicit
pointer from the is-a.h API.

* cgraph.h (is_a_helper <cgraph_node>::test): Convert to...
(is_a_helper <cgraph_node *>::test): ...this, matching change to
is-a.h API.
(is_a_helper <varpool_node>::test): Likewise, convert to...
(is_a_helper <varpool_node *>::test): ...this.

(varpool_first_variable): Update for removal of implicit pointer
from the is-a.h API.
(varpool_next_variable): Likewise.
(varpool_first_static_initializer): Likewise.
(varpool_next_static_initializer): Likewise.
(varpool_first_defined_variable): Likewise.
(varpool_next_defined_variable): Likewise.
(cgraph_first_defined_function): Likewise.
(cgraph_next_defined_function): Likewise.
(cgraph_first_function): Likewise.
(cgraph_next_function): Likewise.
(cgraph_first_function_with_gimple_body): Likewise.
(cgraph_next_function_with_gimple_body): Likewise.
(cgraph_alias_target): Likewise.
(varpool_alias_target): Likewise.
(cgraph_function_or_thunk_node): Likewise.
(varpool_variable_node): Likewise.
(symtab_real_symbol_p): Likewise.
* cgraphunit.c (referred_to_p): Likewise.
(analyze_functions): Likewise.
(handle_alias_pairs): Likewise.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Likewise.
* gimple-ssa.h (gimple_vuse_op): Likewise.
(gimple_vdef_op): Likewise.
* gimple-streamer-in.c (input_gimple_stmt): Likewise.
* gimple.c (gimple_build_asm_1): Likewise.
(gimple_build_try): Likewise.
(gimple_build_resx): Likewise.
(gimple_build_eh_dispatch): Likewise.
(gimple_build_omp_for): Likewise.
(gimple_omp_for_set_clauses): Likewise.

* gimple.h (is_a_helper <gimple_statement_asm>::test): Convert to...
(is_a_helper <gimple_statement_asm *>::test): ...this.
(is_a_helper <gimple_statement_bind>::test): Convert to...
(is_a_helper <gimple_statement_bind *>::test): ...this.
(is_a_helper <gimple_statement_call>::test): Convert to...
(is_a_helper <gimple_statement_call *>::test): ...this.
(is_a_helper <gimple_statement_catch>::test): Convert to...
(is_a_helper <gimple_statement_catch *>::test): ...this.
(is_a_helper <gimple_statement_resx>::test): Convert to...
(is_a_helper <gimple_statement_resx *>::test): ...this.
(is_a_helper <gimple_statement_eh_dispatch>::test): Convert to...
(is_a_helper <gimple_statement_eh_dispatch *>::test): ...this.
(is_a_helper <gimple_statement_eh_else>::test): Convert to...
(is_a_helper <gimple_statement_eh_else *>::test): ...this.
(is_a_helper <gimple_statement_eh_filter>::test): Convert to...
(is_a_helper <gimple_statement_eh_filter *>::test): ...this.
(is_a_helper <gimple_statement_eh_mnt>::test): Convert to...
(is_a_helper <gimple_statement_eh_mnt *>::test): ...this.
(is_a_helper <gimple_statement_omp_atomic_load>::test): Convert to...
(is_a_helper <gimple_statement_omp_atomic_load *>::test): ...this.
(is_a_helper <gimple_statement_omp_atomic_store>::test): Convert to...
(is_a_helper <gimple_statement_omp_atomic_store *>::test): ...this.
(is_a_helper <gimple_statement_omp_return>::test): Convert to...
(is_a_helper <gimple_statement_omp_return *>::test): ...this.
(is_a_helper <gimple_statement_omp_continue>::test): Convert to...
(is_a_helper <gimple_statement_omp_continue *>::test): ...this.
(is_a_helper <gimple_statement_omp_critical>::test): Convert to...
(is_a_helper <gimple_statement_omp_critical *>::test): ...this.
(is_a_helper <gimple_statement_omp_for>::test): Convert to...
(is_a_helper <gimple_statement_omp_for *>::test): ...this.
(is_a_helper <gimple_statement_omp_taskreg>::test): Convert to...
(is_a_helper <gimple_statement_omp_taskreg *>::test): ...this.
(is_a_helper <gimple_statement_omp_parallel>::test): Convert to...
(is_a_helper <gimple_statement_omp_parallel *>::test): ...this.
(is_a_helper <gimple_statement_omp_target>::test): Convert to...
(is_a_helper <gimple_statement_omp_target *>::test): ...this.
(is_a_helper <gimple_statement_omp_sections>::test): Convert to...
(is_a_helper <gimple_statement_omp_sections *>::test): ...this.
(is_a_helper <gimple_statement_omp_single>::test): Convert to...
(is_a_helper <gimple_statement_omp_single *>::test): ...this.
(is_a_helper <gimple_statement_omp_teams>::test): Convert to...
(is_a_helper <gimple_statement_omp_teams *>::test): ...this.
(is_a_helper <gimple_statement_omp_task>::test): Convert to...
(is_a_helper <gimple_statement_omp_task *>::test): ...this.
(is_a_helper <gimple_statement_phi>::test): Convert to...
(is_a_helper <gimple_statement_phi *>::test): ...this.
(is_a_helper <gimple_statement_transaction>::test): Convert to...
(is_a_helper <gimple_statement_transaction *>::test): ...this.
(is_a_helper <gimple_statement_try>::test): Convert to...
(is_a_helper <gimple_statement_try *>::test): ...this.
(is_a_helper <gimple_statement_wce>::test): Convert to...
(is_a_helper <gimple_statement_wce *>::test): ...this.
(is_a_helper <const gimple_statement_asm>::test): Convert to...
(is_a_helper <const gimple_statement_asm *>::test): ...this.
(is_a_helper <const gimple_statement_bind>::test): Convert to...
(is_a_helper <const gimple_statement_bind *>::test): ...this.
(is_a_helper <const gimple_statement_call>::test): Convert to...
(is_a_helper <const gimple_statement_call *>::test): ...this.
(is_a_helper <const gimple_statement_catch>::test): Convert to...
(is_a_helper <const gimple_statement_catch *>::test): ...this.
(is_a_helper <const gimple_statement_resx>::test): Convert to...
(is_a_helper <const gimple_statement_resx *>::test): ...this.
(is_a_helper <const gimple_statement_eh_dispatch>::test):
Convert to...
(is_a_helper <const gimple_statement_eh_dispatch *>::test):
...this.
(is_a_helper <const gimple_statement_eh_filter>::test): Convert
to...
(is_a_helper <const gimple_statement_eh_filter *>::test): ...this.
(is_a_helper <const gimple_statement_omp_atomic_load>::test):
Convert to...
(is_a_helper <const gimple_statement_omp_atomic_load *>::test):
...this.
(is_a_helper <const gimple_statement_omp_atomic_store>::test):
Convert to...
(is_a_helper <const gimple_statement_omp_atomic_store *>::test):
...this.
(is_a_helper <const gimple_statement_omp_return>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_return *>::test): ...this.
(is_a_helper <const gimple_statement_omp_continue>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_continue *>::test): ...this.
(is_a_helper <const gimple_statement_omp_critical>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_critical *>::test): ...this.
(is_a_helper <const gimple_statement_omp_for>::test): Convert to...
(is_a_helper <const gimple_statement_omp_for *>::test): ...this.
(is_a_helper <const gimple_statement_omp_taskreg>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_taskreg *>::test): ...this.
(is_a_helper <const gimple_statement_omp_parallel>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_parallel *>::test): ...this.
(is_a_helper <const gimple_statement_omp_target>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_target *>::test): ...this.
(is_a_helper <const gimple_statement_omp_sections>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_sections *>::test): ...this.
(is_a_helper <const gimple_statement_omp_single>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_single *>::test): ...this.
(is_a_helper <const gimple_statement_omp_teams>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_teams *>::test): ...this.
(is_a_helper <const gimple_statement_omp_task>::test): Convert
to...
(is_a_helper <const gimple_statement_omp_task *>::test): ...this.
(is_a_helper <const gimple_statement_phi>::test): Convert to...
(is_a_helper <const gimple_statement_phi *>::test): ...this.
(is_a_helper <const gimple_statement_transaction>::test): Convert
to...
(is_a_helper <const gimple_statement_transaction *>::test): ...this.
(is_a_helper <const gimple_statement_with_ops>::test): Convert
to...
(is_a_helper <const gimple_statement_with_ops *>::test): ...this.
(is_a_helper <gimple_statement_with_ops>::test): Convert to...
(is_a_helper <gimple_statement_with_ops *>::test): ...this.
(is_a_helper <const gimple_statement_with_memory_ops>::test):
Convert to...
(is_a_helper <const gimple_statement_with_memory_ops *>::test):
...this.
(is_a_helper <gimple_statement_with_memory_ops>::test): Convert
to...
(is_a_helper <gimple_statement_with_memory_ops *>::test): ...this.

(gimple_use_ops): Update for removal of implicit pointer from the
is-a.h API.
(gimple_set_use_ops): Likewise.
(gimple_vuse): Likewise.
(gimple_vdef): Likewise.
(gimple_vuse_ptr): Likewise.
(gimple_vdef_ptr): Likewise.
(gimple_set_vuse): Likewise.
(gimple_set_vdef): Likewise.
(gimple_omp_return_set_lhs): Likewise.
(gimple_omp_return_lhs): Likewise.
(gimple_omp_return_lhs_ptr): Likewise.
(gimple_call_fntype): Likewise.
(gimple_call_set_fntype): Likewise.
(gimple_call_set_internal_fn): Likewise.
(gimple_call_use_set): Likewise.
(gimple_call_clobber_set): Likewise.
(gimple_bind_vars): Likewise.
(gimple_bind_set_vars): Likewise.
(gimple_bind_body_ptr): Likewise.
(gimple_bind_set_body): Likewise.
(gimple_bind_add_stmt): Likewise.
(gimple_bind_block): Likewise.
(gimple_bind_set_block): Likewise.
(gimple_asm_ninputs): Likewise.
(gimple_asm_noutputs): Likewise.
(gimple_asm_nclobbers): Likewise.
(gimple_asm_nlabels): Likewise.
(gimple_asm_input_op): Likewise.
(gimple_asm_input_op_ptr): Likewise.
(gimple_asm_output_op): Likewise.
(gimple_asm_output_op_ptr): Likewise.
(gimple_asm_set_output_op): Likewise.
(gimple_asm_clobber_op): Likewise.
(gimple_asm_set_clobber_op): Likewise.
(gimple_asm_label_op): Likewise.
(gimple_asm_set_label_op): Likewise.
(gimple_asm_string): Likewise.
(gimple_catch_types): Likewise.
(gimple_catch_types_ptr): Likewise.
(gimple_catch_handler_ptr): Likewise.
(gimple_catch_set_types): Likewise.
(gimple_catch_set_handler): Likewise.
(gimple_eh_filter_types): Likewise.
(gimple_eh_filter_types_ptr): Likewise.
(gimple_eh_filter_failure_ptr): Likewise.
(gimple_eh_filter_set_types): Likewise.
(gimple_eh_filter_set_failure): Likewise.
(gimple_eh_must_not_throw_fndecl): Likewise.
(gimple_eh_must_not_throw_set_fndecl): Likewise.
(gimple_eh_else_n_body_ptr): Likewise.
(gimple_eh_else_e_body_ptr): Likewise.
(gimple_eh_else_set_n_body): Likewise.
(gimple_eh_else_set_e_body): Likewise.
(gimple_try_eval_ptr): Likewise.
(gimple_try_cleanup_ptr): Likewise.
(gimple_try_set_eval): Likewise.
(gimple_try_set_cleanup): Likewise.
(gimple_wce_cleanup_ptr): Likewise.
(gimple_wce_set_cleanup): Likewise.
(gimple_phi_capacity): Likewise.
(gimple_phi_num_args): Likewise.
(gimple_phi_result): Likewise.
(gimple_phi_result_ptr): Likewise.
(gimple_phi_set_result): Likewise.
(gimple_phi_arg): Likewise.
(gimple_phi_set_arg): Likewise.
(gimple_resx_region): Likewise.
(gimple_resx_set_region): Likewise.
(gimple_eh_dispatch_region): Likewise.
(gimple_eh_dispatch_set_region): Likewise.
(gimple_omp_critical_name): Likewise.
(gimple_omp_critical_name_ptr): Likewise.
(gimple_omp_critical_set_name): Likewise.
(gimple_omp_for_clauses): Likewise.
(gimple_omp_for_clauses_ptr): Likewise.
(gimple_omp_for_set_clauses): Likewise.
(gimple_omp_for_collapse): Likewise.
(gimple_omp_for_index): Likewise.
(gimple_omp_for_index_ptr): Likewise.
(gimple_omp_for_set_index): Likewise.
(gimple_omp_for_initial): Likewise.
(gimple_omp_for_initial_ptr): Likewise.
(gimple_omp_for_set_initial): Likewise.
(gimple_omp_for_final): Likewise.
(gimple_omp_for_final_ptr): Likewise.
(gimple_omp_for_set_final): Likewise.
(gimple_omp_for_incr): Likewise.
(gimple_omp_for_incr_ptr): Likewise.
(gimple_omp_for_set_incr): Likewise.
(gimple_omp_for_pre_body_ptr): Likewise.
(gimple_omp_for_set_pre_body): Likewise.
(gimple_omp_parallel_clauses): Likewise.
(gimple_omp_parallel_clauses_ptr): Likewise.
(gimple_omp_parallel_set_clauses): Likewise.
(gimple_omp_parallel_child_fn): Likewise.
(gimple_omp_parallel_child_fn_ptr): Likewise.
(gimple_omp_parallel_set_child_fn): Likewise.
(gimple_omp_parallel_data_arg): Likewise.
(gimple_omp_parallel_data_arg_ptr): Likewise.
(gimple_omp_parallel_set_data_arg): Likewise.
(gimple_omp_task_clauses): Likewise.
(gimple_omp_task_clauses_ptr): Likewise.
(gimple_omp_task_set_clauses): Likewise.
(gimple_omp_task_child_fn): Likewise.
(gimple_omp_task_child_fn_ptr): Likewise.
(gimple_omp_task_set_child_fn): Likewise.
(gimple_omp_task_data_arg): Likewise.
(gimple_omp_task_data_arg_ptr): Likewise.
(gimple_omp_task_set_data_arg): Likewise.
(gimple_omp_taskreg_clauses): Likewise.
(gimple_omp_taskreg_clauses_ptr): Likewise.
(gimple_omp_taskreg_set_clauses): Likewise.
(gimple_omp_taskreg_child_fn): Likewise.
(gimple_omp_taskreg_child_fn_ptr): Likewise.
(gimple_omp_taskreg_set_child_fn): Likewise.
(gimple_omp_taskreg_data_arg): Likewise.
(gimple_omp_taskreg_data_arg_ptr): Likewise.
(gimple_omp_taskreg_set_data_arg): Likewise.
(gimple_omp_task_copy_fn): Likewise.
(gimple_omp_task_copy_fn_ptr): Likewise.
(gimple_omp_task_set_copy_fn): Likewise.
(gimple_omp_task_arg_size): Likewise.
(gimple_omp_task_arg_size_ptr): Likewise.
(gimple_omp_task_set_arg_size): Likewise.
(gimple_omp_task_arg_align): Likewise.
(gimple_omp_task_arg_align_ptr): Likewise.
(gimple_omp_task_set_arg_align): Likewise.
(gimple_omp_single_clauses): Likewise.
(gimple_omp_single_clauses_ptr): Likewise.
(gimple_omp_single_set_clauses): Likewise.
(gimple_omp_target_clauses): Likewise.
(gimple_omp_target_clauses_ptr): Likewise.
(gimple_omp_target_set_clauses): Likewise.
(gimple_omp_target_child_fn): Likewise.
(gimple_omp_target_child_fn_ptr): Likewise.
(gimple_omp_target_set_child_fn): Likewise.
(gimple_omp_target_data_arg): Likewise.
(gimple_omp_target_data_arg_ptr): Likewise.
(gimple_omp_target_set_data_arg): Likewise.
(gimple_omp_teams_clauses): Likewise.
(gimple_omp_teams_clauses_ptr): Likewise.
(gimple_omp_teams_set_clauses): Likewise.
(gimple_omp_sections_clauses): Likewise.
(gimple_omp_sections_clauses_ptr): Likewise.
(gimple_omp_sections_set_clauses): Likewise.
(gimple_omp_sections_control): Likewise.
(gimple_omp_sections_control_ptr): Likewise.
(gimple_omp_sections_set_control): Likewise.
(gimple_omp_for_set_cond): Likewise.
(gimple_omp_for_cond): Likewise.
(gimple_omp_atomic_store_set_val): Likewise.
(gimple_omp_atomic_store_val): Likewise.
(gimple_omp_atomic_store_val_ptr): Likewise.
(gimple_omp_atomic_load_set_lhs): Likewise.
(gimple_omp_atomic_load_lhs): Likewise.
(gimple_omp_atomic_load_lhs_ptr): Likewise.
(gimple_omp_atomic_load_set_rhs): Likewise.
(gimple_omp_atomic_load_rhs): Likewise.
(gimple_omp_atomic_load_rhs_ptr): Likewise.
(gimple_omp_continue_control_def): Likewise.
(gimple_omp_continue_control_def_ptr): Likewise.
(gimple_omp_continue_set_control_def): Likewise.
(gimple_omp_continue_control_use): Likewise.
(gimple_omp_continue_control_use_ptr): Likewise.
(gimple_omp_continue_set_control_use): Likewise.
(gimple_transaction_body_ptr): Likewise.
(gimple_transaction_label): Likewise.
(gimple_transaction_label_ptr): Likewise.
(gimple_transaction_set_body): Likewise.
(gimple_transaction_set_label): Likewise.

* ipa-devirt.c (build_type_inheritance_graph): Likewise.
* ipa-inline-analysis.c (inline_write_summary): Likewise.
* ipa-ref.c (ipa_record_reference): Likewise.
* ipa-reference.c (analyze_function): Likewise.
(ipa_reference_write_optimization_summary): Likewise.
* ipa.c (symtab_remove_unreachable_nodes): Likewise.
(address_taken_from_non_vtable_p): Likewise.
(comdat_can_be_unshared_p_1): Likewise.
* lto-cgraph.c (lto_output_ref): Likewise.
(add_references): Likewise.
(compute_ltrans_boundary): Likewise.
(output_symtab): Likewise.
(input_ref): Likewise.
(input_cgraph_1): Likewise.
(output_cgraph_opt_summary): Likewise.
* lto-streamer-out.c (lto_output): Likewise.
(output_symbol_p): Likewise.
* lto-streamer.h (lsei_next_function_in_partition): Likewise.
(lsei_start_function_in_partition): Likewise.
(lsei_next_variable_in_partition): Likewise.
(lsei_start_variable_in_partition): Likewise.
* symtab.c (insert_to_assembler_name_hash): Likewise.
(unlink_from_assembler_name_hash): Likewise.
(symtab_unregister_node): Likewise.
(symtab_remove_node): Likewise.
(dump_symtab_node): Likewise.
(verify_symtab_base): Likewise.
(verify_symtab_node): Likewise.
(symtab_make_decl_local): Likewise.
(symtab_alias_ultimate_target): Likewise.
(symtab_resolve_alias): Likewise.
(symtab_get_symbol_partitioning_class): Likewise.
* tree-phinodes.c (allocate_phi_node): Likewise.
(reserve_phi_args_for_new_edge): Likewise.
(remove_phi_args): Likewise.
* varpool.c (varpool_node_for_asm): Likewise.
(varpool_remove_unreferenced_decls): Likewise.

gcc/lto/
* lto-partition.c (add_references_to_partition): Update for
removal of implicit pointer from the is-a.h API.
(add_symbol_to_partition_1): Likewise.
(contained_in_symbol): Likewise.
(undo_partition): Likewise.
(lto_balanced_map): Likewise.
(promote_symbol): Likewise.
* lto-symtab.c (lto_symtab_merge_symbols_1): Likewise.
(lto_symtab_merge_symbols): Likewise.
* lto.c (lto_wpa_write_files): Likewise.

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

10 years ago PR tree-optimization/60902
law [Wed, 23 Apr 2014 18:04:46 +0000 (18:04 +0000)]
PR tree-optimization/60902
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts_at_dest): Make sure to
invalidate outputs from statements that do not produce useful
outputs for threading.

PR tree-optimization/60902
* gcc.target/i386/pr60902.c: New test.

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

10 years ago[AArch64] VDUP Testcases
mshawcroft [Wed, 23 Apr 2014 17:02:49 +0000 (17:02 +0000)]
[AArch64] VDUP Testcases

This patch adds vdup intrinsic testcases for AArch64. those testcases
are nice to have, as it allows to reason about vdup consistency for
both LE and BE compiler flavors.

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

10 years ago[AARCH64] Use standard patterns for stack protection.
mshawcroft [Wed, 23 Apr 2014 17:01:39 +0000 (17:01 +0000)]
[AARCH64] Use standard patterns for stack protection.

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

10 years ago[AArch64] Fully support rotate on logical operations.
mshawcroft [Wed, 23 Apr 2014 17:00:40 +0000 (17:00 +0000)]
[AArch64] Fully support rotate on logical operations.

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

10 years ago[ARM] Initialize new tune_params values
jgreenhalgh [Wed, 23 Apr 2014 16:37:05 +0000 (16:37 +0000)]
[ARM] Initialize new tune_params values

gcc/

* config/arm/arm.c (arm_cortex_a57_tune): Initialize all fields.
(arm_cortex_a12_tune): Likewise.

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

10 years ago[AArch64] Add handling of bswap operations in rtx costs
ktkachov [Wed, 23 Apr 2014 15:30:53 +0000 (15:30 +0000)]
[AArch64] Add handling of bswap operations in rtx costs

* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle BSWAP.

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

10 years ago[ARM][3/3] Recognise bitwise operations leading to SImode rev16
ktkachov [Wed, 23 Apr 2014 15:29:06 +0000 (15:29 +0000)]
[ARM][3/3] Recognise bitwise operations leading to SImode rev16

* config/arm/arm.md (arm_rev16si2): New pattern.
(arm_rev16si2_alt): Likewise.
* config/arm/arm.c (arm_new_rtx_costs): Handle rev16 case.

* gcc.target/arm/rev16.c: New test.

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

10 years ago[AArch64][2/3] Recognise rev16 operations on SImode and DImode data
ktkachov [Wed, 23 Apr 2014 15:26:28 +0000 (15:26 +0000)]
[AArch64][2/3] Recognise rev16 operations on SImode and DImode data

       * config/aarch64/aarch64.md (rev16<mode>2): New pattern.
       (rev16<mode>2_alt): Likewise.
       * config/aarch64/aarch64.c (aarch64_rtx_costs): Handle rev16 case.
       * config/arm/aarch-common.c (aarch_rev16_shright_mask_imm_p): New.
       (aarch_rev16_shleft_mask_imm_p): Likewise.
       (aarch_rev16_p_1): Likewise.
       (aarch_rev16_p): Likewise.
       * config/arm/aarch-common-protos.h (aarch_rev16_p): Declare extern.
       (aarch_rev16_shright_mask_imm_p): Likewise.
       (aarch_rev16_shleft_mask_imm_p): Likewise.

       * gcc.target/aarch64/rev16_1.c: New test.

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

10 years ago[ARM][1/3] Add rev field to rtx cost tables
ktkachov [Wed, 23 Apr 2014 15:23:14 +0000 (15:23 +0000)]
[ARM][1/3] Add rev field to rtx cost tables

       * config/arm/aarch-common-protos.h (alu_cost_table): Add rev field.
       * config/arm/aarch-cost-tables.h (generic_extra_costs): Specify
       rev cost.
       (cortex_a53_extra_costs): Likewise.
       (cortex_a57_extra_costs): Likewise.
       * config/arm/arm.c (cortexa9_extra_costs): Likewise.
       (cortexa7_extra_costs): Likewise.
       (cortexa8_extra_costs): Likewise.
       (cortexa12_extra_costs): Likewise.
       (cortexa15_extra_costs): Likewise.
       (v7m_extra_costs): Likewise.
       (arm_new_rtx_costs): Handle BSWAP.

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

10 years ago[ARM] Cortex-A8 rtx cost table
ktkachov [Wed, 23 Apr 2014 15:20:25 +0000 (15:20 +0000)]
[ARM] Cortex-A8 rtx cost table

       * config/arm/arm.c (cortexa8_extra_costs): New table.
       (arm_cortex_a8_tune): New tuning struct.
       * config/arm/arm-cores.def (cortex-a8): Use cortex_a8 tuning struct.

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

10 years ago[ARM] Handle FMA code in rtx costs.
ktkachov [Wed, 23 Apr 2014 15:17:54 +0000 (15:17 +0000)]
[ARM] Handle FMA code in rtx costs.

       * config/arm/arm.c (arm_new_rtx_costs): Handle FMA.

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

10 years ago2014-04-23 Richard Biener <rguenther@suse.de>
rguenth [Wed, 23 Apr 2014 13:48:12 +0000 (13:48 +0000)]
2014-04-23  Richard Biener  <rguenther@suse.de>

* Makefile.in (OBJS): Remove loop-unswitch.o.
* loop-unswitch.c: Delete.
* tree-pass.h (make_pass_rtl_unswitch): Remove.
* passes.def (pass_rtl_unswitch): Likewise.
* loop-init.c (gate_rtl_unswitch): Likewise.
(rtl_unswitch): Likewise.
(pass_data_rtl_unswitch): Likewise.
(pass_rtl_unswitch): Likewise.
(make_pass_rtl_unswitch): Likewise.
* rtl.h (reversed_condition): Likewise.
(compare_and_jump_seq): Likewise.
* loop-iv.c (reversed_condition): Move here from loop-unswitch.c
and make static.
* loop-unroll.c (compare_and_jump_seq): Likewise.

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

10 years ago2014-04-23 Richard Biener <rguenther@suse.de>
rguenth [Wed, 23 Apr 2014 11:25:27 +0000 (11:25 +0000)]
2014-04-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/60903
* tree-ssa-loop-im.c (analyze_memory_references): Remove
commented code block.
(execute_sm_if_changed): Properly apply IRREDUCIBLE_LOOP
loop flags to newly created BBs and edges.

* gcc.dg/torture/pr60903.c: New testcase.

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

10 years ago * c-common.c (handle_tm_wrap_attribute): Tweak error message.
mpolacek [Wed, 23 Apr 2014 10:54:53 +0000 (10:54 +0000)]
* c-common.c (handle_tm_wrap_attribute): Tweak error message.

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

10 years ago * config/msp430/msp430.c (msp430_handle_option): Move function
nickc [Wed, 23 Apr 2014 10:35:49 +0000 (10:35 +0000)]
* config/msp430/msp430.c (msp430_handle_option): Move function
to msp430-common.c
(msp430_option_override): Simplify mcu and mcpu option handling.
(msp430_is_f5_mcu): Rename to msp430_use_f5_series_hwmult.  Add
support for -mhwmult command line option.
(has_32bit_hwmult): Rename to use_32bit_hwmult.  Add support for
-mhwmult command line option.
(msp430_hwmult_enabled): Delete.
(msp43o_output_labelref): Add support for -mhwmult command line
option.
* config/msp430/msp430.md (mulhisi3, umulhisi3, mulsidi3)
(umulsidi3): Likewise.
* config/msp430/msp430.opt (mmcu): Add Report attribute.
(mcpu, mlarge, msmall): Likewise.
(mhwmult): New option.
* config/msp430/msp430-protos.h (msp430_hwmult_enabled): Remove
prototype.
(msp430_is_f5_mcu): Remove prototype.
(msp430_use_f5_series_hwmult): Add prototype.
* config/msp430/msp430-opts.h: New file.
* common/config/msp430: New directory.
* common/config/msp430/msp430-common.c: New file.
* config.gcc (msp430): Remove target_has_targetm_common.
* doc/invoke.texi: Document -mhwmult command line option.

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

10 years ago Revert
ebotcazou [Wed, 23 Apr 2014 10:29:47 +0000 (10:29 +0000)]
Revert
2014-04-22  Richard Henderson  <rth@redhat.com>

* gcc-interface/Makefile.in: Support aarch64-linux.

2014-04-22  Eric Botcazou  <ebotcazou@adacore.com>

* fe.h (Compiler_Abort): Replace Fat_Pointer with String_Pointer.
(Error_Msg_N): Likewise.
(Error_Msg_NE): Likewise.
(Get_External_Name_With_Suffix): Likewise.
* types.h (Fat_Pointer): Delete.
(String_Pointer): New type.
(DECLARE_STRING_POINTER): New macro.
* gcc-interface/decl.c (create_concat_name): Adjust.
* gcc-interface/trans.c (post_error): Likewise.
(post_error_ne): Likewise.
* gcc-interface/misc.c (internal_error_function): Likewise.

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

10 years agoUpdate libstdc++ baseline symbols for m68k
schwab [Wed, 23 Apr 2014 10:07:06 +0000 (10:07 +0000)]
Update libstdc++ baseline symbols for m68k

* config/abi/post/m68k-linux-gnu/baseline_symbols.txt
(CXXABI_1.3.9): New version.

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

10 years ago * config/i386/cygwin.h (ENDFILE_SPEC): Include
nickc [Wed, 23 Apr 2014 09:42:40 +0000 (09:42 +0000)]
* config/i386/cygwin.h (ENDFILE_SPEC): Include
default-manifest.o if it can be found in the search path.
* config/i386/mingw32.h (ENDFILE_SPEC): Likewise.

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

10 years ago2014-04-23 Terry Guo <terry.guo@arm.com>
xguo [Wed, 23 Apr 2014 08:59:07 +0000 (08:59 +0000)]
2014-04-23  Terry Guo  <terry.guo@arm.com>

* config/arm/arm.h (ASM_APP_OFF): Re-define it in a cleaner way.

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

10 years ago2014-04-23 Richard Biener <rguenther@suse.de>
rguenth [Wed, 23 Apr 2014 08:27:00 +0000 (08:27 +0000)]
2014-04-23  Richard Biener  <rguenther@suse.de>

PR middle-end/60895
* tree-inline.c (declare_return_variable): Use mark_addressable.

* g++.dg/torture/pr60895.C: New testcase.

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

10 years ago2014-04-23 Richard Biener <rguenther@suse.de>
rguenth [Wed, 23 Apr 2014 08:23:33 +0000 (08:23 +0000)]
2014-04-23  Richard Biener  <rguenther@suse.de>

PR middle-end/60891
* loop-init.c (loop_optimizer_init): Make sure to apply
LOOPS_MAY_HAVE_MULTIPLE_LATCHES before fixing up loops.

* gcc.dg/torture/pr60891.c: New testcase.

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

10 years ago PR sanitizer/60275
jakub [Wed, 23 Apr 2014 08:20:12 +0000 (08:20 +0000)]
PR sanitizer/60275
* common.opt (fsanitize-recover, fsanitize-undefined-trap-on-error):
New options.
* gcc.c (sanitize_spec_function): Don't return "" for "undefined"
if flag_sanitize_undefined_trap_on_error.
* sanitizer.def (BUILT_IN_UBSAN_HANDLE_DIVREM_OVERFLOW_ABORT,
BUILT_IN_UBSAN_HANDLE_SHIFT_OUT_OF_BOUNDS_ABORT,
BUILT_IN_UBSAN_HANDLE_VLA_BOUND_NOT_POSITIVE_ABORT,
BUILT_IN_UBSAN_HANDLE_TYPE_MISMATCH_ABORT,
BUILT_IN_UBSAN_HANDLE_ADD_OVERFLOW_ABORT,
BUILT_IN_UBSAN_HANDLE_SUB_OVERFLOW_ABORT,
BUILT_IN_UBSAN_HANDLE_MUL_OVERFLOW_ABORT,
BUILT_IN_UBSAN_HANDLE_NEGATE_OVERFLOW_ABORT,
BUILT_IN_UBSAN_HANDLE_LOAD_INVALID_VALUE_ABORT): New builtins.
* ubsan.c (ubsan_instrument_unreachable): Return
__builtin_trap () if flag_sanitize_undefined_trap_on_error.
(ubsan_expand_null_ifn): Emit __builtin_trap ()
if flag_sanitize_undefined_trap_on_error and
__ubsan_handle_type_mismatch_abort if !flag_sanitize_recover.
(ubsan_expand_null_ifn, ubsan_build_overflow_builtin,
instrument_bool_enum_load): Emit __builtin_trap () if
flag_sanitize_undefined_trap_on_error and
__builtin_handle_*_abort () if !flag_sanitize_recover.
* doc/invoke.texi (-fsanitize-recover,
-fsanitize-undefined-trap-on-error): Document.
c-family/
* c-ubsan.c (ubsan_instrument_return): Return __builtin_trap ()
if flag_sanitize_undefined_trap_on_error.
(ubsan_instrument_division, ubsan_instrument_shift,
ubsan_instrument_vla): Likewise.  Use __ubsan_handle_*_abort ()
if !flag_sanitize_recover.
testsuite/
* g++.dg/ubsan/return-2.C: Revert 2014-03-24 changes, add
-fno-sanitize-recover to dg-options.
* g++.dg/ubsan/cxx11-shift-1.C: Remove c++11 target restriction,
add -std=c++11 to dg-options.
* g++.dg/ubsan/cxx11-shift-2.C: Likewise.
* g++.dg/ubsan/cxx1y-vla.C: Remove c++1y target restriction,
add -std=c++1y to dg-options.
* c-c++-common/ubsan/undefined-1.c: Revert 2014-03-24 changes, add
-fno-sanitize-recover to dg-options.
* c-c++-common/ubsan/overflow-sub-1.c: Likewise.
* c-c++-common/ubsan/vla-4.c: Likewise.
* c-c++-common/ubsan/pr59503.c: Likewise.
* c-c++-common/ubsan/vla-3.c: Likewise.
* c-c++-common/ubsan/save-expr-1.c: Likewise.
* c-c++-common/ubsan/overflow-add-1.c: Likewise.
* c-c++-common/ubsan/shift-3.c: Likewise.
* c-c++-common/ubsan/overflow-1.c: Likewise.
* c-c++-common/ubsan/overflow-negate-2.c: Likewise.
* c-c++-common/ubsan/vla-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-1.c: Likewise.
* c-c++-common/ubsan/pr60613-1.c: Likewise.
* c-c++-common/ubsan/shift-6.c: Likewise.
* c-c++-common/ubsan/overflow-mul-3.c: Likewise.
* c-c++-common/ubsan/overflow-add-3.c: New test.
* c-c++-common/ubsan/overflow-add-4.c: New test.
* c-c++-common/ubsan/div-by-zero-6.c: New test.
* c-c++-common/ubsan/div-by-zero-7.c: New test.

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

10 years ago2014-04-22 Christian Bruel <christian.bruel@st.com>
chrbr [Wed, 23 Apr 2014 07:30:12 +0000 (07:30 +0000)]
2014-04-22  Christian Bruel  <christian.bruel@st.com>

        * config/sh/sh.md (mov<mode>): Replace movQIHI.
         Force immediates to SImode.

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

10 years ago2014-04-22 Sandra Loosemore <sandra@codesourcery.com>
sandra [Wed, 23 Apr 2014 02:14:42 +0000 (02:14 +0000)]
2014-04-22  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.md (UNSPEC_ROUND): New.
(lroundsfsi2): New.
* config/nios2/nios2.opt (mno-custom-round, mcustom-round=): New.
* config/nios2/nios2-opts.h (N2FPU_ALL_CODES): Add round.
* config/nios2/nios2.c (N2F_NO_ERRNO): Define.
(nios2_fpu_insn): Add entry for round.
(N2FPU_NO_ERRNO_P): Define.
(nios2_custom_check_insns): Add check for N2F_NO_ERRNO and
flag_errno_math.
* doc/invoke.texi (Nios II Options): Document -mcustom-round.

gcc/testsuite/
* gcc.target/nios2/custom-fp-conversion.c: Adjust to test that
lroundf generates custom round instruction, too.

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

10 years agoDaily bump.
gccadmin [Wed, 23 Apr 2014 00:17:11 +0000 (00:17 +0000)]
Daily bump.

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

10 years agocompiler: Use backend interface for initialization functions.
ian [Tue, 22 Apr 2014 23:46:30 +0000 (23:46 +0000)]
compiler: Use backend interface for initialization functions.
* go-gcc.cc (Gcc_backend::temporary_variable): Push cfun around
call to create_tmp_var.  Require that function be non-NULL.

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

10 years agoAArch64 add, sub, mul in TImode
rth [Tue, 22 Apr 2014 20:31:29 +0000 (20:31 +0000)]
AArch64 add, sub, mul in TImode

* config/aarch64/aarch64.md (multi3): New expander.
(madd<GPI>): Remove leading * from name.

* config/aarch64/aarch64.md (<su_optab>mulditi3): New expander.

* config/aarch64/aarch64 (addti3, subti3): New expanders.
(add<GPI>3_compare0): Remove leading * from name.
(add<GPI>3_carryin): Likewise.
(sub<GPI>3_compare0): Likewise.
(sub<GPI>3_carryin): Likewise.

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

10 years ago2014-04-22 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 22 Apr 2014 19:28:43 +0000 (19:28 +0000)]
2014-04-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60881
        * trans-expr.c (gfc_trans_subcomponent_assign): Fix handling
        of scalar coarrays.

2014-04-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60881
        * coarray/alloc_comp_3.f90: New.

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

10 years agoAdd ada configuration for aarch64-linux
rth [Tue, 22 Apr 2014 16:54:25 +0000 (16:54 +0000)]
Add ada configuration for aarch64-linux

* gcc-interface/Makefile.in: Support aarch64-linux.

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

10 years agoEnable __gnat_alternate_stack for most linux
rth [Tue, 22 Apr 2014 16:51:14 +0000 (16:51 +0000)]
Enable __gnat_alternate_stack for most linux

* init.c [__linux__] (HAVE_GNAT_ALTERNATE_STACK): New define.
(__gnat_alternate_stack): Enable for all linux except ia64.

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

10 years ago2014-04-22 Marc Glisse <marc.glisse@inria.fr>
glisse [Tue, 22 Apr 2014 16:44:46 +0000 (16:44 +0000)]
2014-04-22  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/43622
gcc/c-family/
* c-common.c (registered_builtin_types): Make non-static.
* c-common.h (registered_builtin_types): Declare.
gcc/cp/
* rtti.c (emit_support_tinfo_1): New function, extracted from
emit_support_tinfos.
(emit_support_tinfos): Call it and iterate on registered_builtin_types.
libstdc++-v3/
* config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
* config/abi/pre/gnu-versioned-namespace.ver: New symbols.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.

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

10 years ago2014-04-22 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 22 Apr 2014 16:33:29 +0000 (16:33 +0000)]
2014-04-22  Martin Jambor  <mjambor@suse.cz>

* cgraphclones.c (cgraph_function_versioning): Copy
ipa_transforms_to_apply instead of asserting it is empty.

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

10 years agoMerge longlong.h from glibc tree.
mshawcroft [Tue, 22 Apr 2014 16:31:45 +0000 (16:31 +0000)]
Merge longlong.h from glibc tree.

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

10 years agoUse counter_mode on count_exp to get mode
hjl [Tue, 22 Apr 2014 16:31:41 +0000 (16:31 +0000)]
Use counter_mode on count_exp to get mode

gcc/

PR target/60868
* config/i386/i386.c (ix86_expand_set_or_movmem): Call counter_mode
on count_exp to get mode.

gcc/testsuite/

PR target/60868
* gcc.target/i386/pr60868.c: New testcase.

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

10 years ago PR c/59073
jakub [Tue, 22 Apr 2014 16:22:22 +0000 (16:22 +0000)]
PR c/59073
c/
* c-parser.c (c_parser_omp_parallel): If c_parser_omp_for
fails, don't set OM_PARALLEL_COMBINED and return NULL.
cp/
* parser.c (cp_parser_omp_parallel): If cp_parser_omp_for
fails, don't set OM_PARALLEL_COMBINED and return NULL.
testsuite/
* c-c++-common/gomp/pr59073.c: New test.

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

10 years ago[AArch64] Fix TLS for ILP32.
mshawcroft [Tue, 22 Apr 2014 16:18:49 +0000 (16:18 +0000)]
[AArch64] Fix TLS for ILP32.

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

10 years ago * fe.h (Compiler_Abort): Replace Fat_Pointer with String_Pointer.
ebotcazou [Tue, 22 Apr 2014 16:16:25 +0000 (16:16 +0000)]
* fe.h (Compiler_Abort): Replace Fat_Pointer with String_Pointer.
(Error_Msg_N): Likewise.
(Error_Msg_NE): Likewise.
(Get_External_Name_With_Suffix): Likewise.
* types.h (Fat_Pointer): Delete.
(String_Pointer): New type.
(DECLARE_STRING_POINTER): New macro.
* gcc-interface/decl.c (create_concat_name): Adjust.
* gcc-interface/trans.c (post_error): Likewise.
(post_error_ne): Likewise.
* gcc-interface/misc.c (internal_error_function): Likewise.

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

10 years ago[AArch64] Define TARGET_FLAGS_REGNUM
mshawcroft [Tue, 22 Apr 2014 16:08:33 +0000 (16:08 +0000)]
[AArch64] Define TARGET_FLAGS_REGNUM

Ramana noted:

This defines TARGET_FLAGS_REGNUM for AArch64 to be CC_REGNUM. Noticed
this turns on the cmpelim pass after reload and in a few examples and
a couple of benchmarks I noticed a number of comparisons getting
deleted.

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

10 years ago[AArch64] 64-bit float vreinterpret implemention
mshawcroft [Tue, 22 Apr 2014 16:06:05 +0000 (16:06 +0000)]
[AArch64] 64-bit float vreinterpret implemention

This patch introduces vreinterpret implementation for vectors with
64-bit float lanes and adds testcase for those intrinsics.

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

10 years ago[AArch64] Vreinterpret re-implemention.
mshawcroft [Tue, 22 Apr 2014 16:02:39 +0000 (16:02 +0000)]
[AArch64] Vreinterpret re-implemention.

This patch re-implements vreinterpret intrinsics to directly call a
cast. The aim is to forward as much information to front-end as
possible.

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

10 years ago[AArch64] vqneg and vqabs intrinsics implementation.
mshawcroft [Tue, 22 Apr 2014 15:55:53 +0000 (15:55 +0000)]
[AArch64] vqneg and vqabs intrinsics implementation.

This patch implements vqneg_s64, vqnegd_s64, vqabs_s64 and vqabsd_s64
AArch64 intrinsics.

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

10 years agoImprove sparc_init_modes readability
rth [Tue, 22 Apr 2014 14:48:47 +0000 (14:48 +0000)]
Improve sparc_init_modes readability

        * config/sparc/sparc.c (sparc_init_modes): Hoist GET_MODE_SIZE
        computation to the top of the loop.

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

10 years ago[AArch64] Fix aarch64_initial_elimination_offset calculation.
mshawcroft [Tue, 22 Apr 2014 14:35:33 +0000 (14:35 +0000)]
[AArch64] Fix aarch64_initial_elimination_offset calculation.

This patch fixes the elimination offset calculation.  This is a latent
bug hidden by the frame alignment calculation.

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

10 years ago[AArch64] Fix indentation.
mshawcroft [Tue, 22 Apr 2014 13:19:44 +0000 (13:19 +0000)]
[AArch64] Fix indentation.

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

10 years agogcc/
rsandifo [Tue, 22 Apr 2014 12:46:07 +0000 (12:46 +0000)]
gcc/
* machmode.h (bitwise_mode_for_mode): Declare.
* stor-layout.h (bitwise_type_for_mode): Likewise.
* stor-layout.c (bitwise_mode_for_mode): New function.
(bitwise_type_for_mode): Likewise.
* builtins.c (fold_builtin_memory_op): Use it instead of
int_mode_for_mode and build_nonstandard_integer_type.

gcc/testsuite/
* gcc.dg/memcpy-5.c: New test.

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

10 years agoRemove obsolete Solaris 9 support
ro [Tue, 22 Apr 2014 12:30:59 +0000 (12:30 +0000)]
Remove obsolete Solaris 9 support

libstdc++-v3:
* configure.host: Remove solaris2.9 handling.
Change os_include_dir to os/solaris/solaris2.10.
* acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
* crossconfig.m4: Remove *-solaris2.9 handling, simplify.
* configure: Regenerate.
* config/abi/post/solaris2.9: Remove.
* config/os/solaris/solaris2.9: Rename to ...
* config/os/solaris/solaris2.10: ... this.
* config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
Remove.

* doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
Remove Solaris 9 reference.
* doc/html/manual/configure.html: Regenerate.

* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Remove *-*-solaris2.9 xfail.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
Likewise.

* testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
xfail.

libjava:
* configure.ac (THREADLIBS, THREADSPEC): Remove *-*-solaris2.9
handling.
* configure: Regenerate.

libgfortran:
* config/fpu-387.h [__sun__ && __svr4__]: Remove SSE execution
check.

libgcc:
* config/i386/crtfastmath.c (set_fast_math): Remove SSE execution
check.
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove
Solaris 9 single-threaded support.
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove
Solaris 9 single-threaded support.  Add call_user_handler code
sequences.
(sparc_is_sighandler): Likewise.

libcpp:
* lex.c: Remove Solaris 9 reference.

gcc/testsuite:
* gcc.c-torture/compile/pr28865.c: Remove dg-xfail-if.

* gcc.dg/c99-stdint-6.c: Remove dg-options for *-*-solaris2.9.
* gcc.dg/lto/20090210_0.c: Remove dg-extra-ld-options for
*-*-solaris2.9.
* gcc.dg/torture/pr47917.c: Remove dg-options for *-*-solaris2.9.
* gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.9 handling
from dg-options.
* gcc.target/i386/pr22152.c: Remove i?86-*-solaris2.9 handling
from dg-additional-options.
* gcc.target/i386/vect8-ret.c: Remove i?86-*-solaris2.9 handling
from dg-options.

* gcc.dg/vect/tree-vect.h (check_vect): Remove Solaris 9 SSE2
execution check.
* gcc.target/i386/sse-os-support.h [__sun__ && __svr4__]
(sigill_hdlr): Remove.
(sse_os_support) [__sun__ && __svr4__]: Remove SSE execution
check.

* gfortran.dg/erf_3.F90: Remove sparc*-*-solaris2.9* handling.
* gfortran.dg/fmt_en.f90: Remove i?86-*-solaris2.9* handling.
* gfortran.dg/round_4.f90: Remove *-*-solaris2.9* handling.

* lib/target-supports.exp (add_options_for_tls): Remove
*-*-solaris2.9* handling.

gcc:
* config.gcc (enable_obsolete): Remove *-*-solaris2.9*.
(*-*-solaris2.[0-9] | *-*-solaris2.[0-9].*): Mark unsupported.
(*-*-solaris2*): Simplify.
(i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Likewise.
(i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Remove
*-*-solaris2.9* handling.

* configure.ac (gcc_cv_as_hidden): Remove test for Solaris 9/x86
as bug.
(gcc_cv_ld_hidden): Remove *-*-solaris2.9* handling.
(ld_tls_support): Remove i?86-*-solaris2.9, sparc*-*-solaris2.9
handling, simplify.
(gcc_cv_as_gstabs_flag): Remove workaround for Solaris 9/x86 as bug.
* configure: Regenerate.

* config/i386/sol2-9.h: Remove.

* doc/install.texi (Specific, i?86-*-solaris2.9): Remove.
(Specific, *-*-solaris2*): Mention Solaris 9 support removal.
Remove Solaris 9 references.

fixincludes:
* inclhack.def (math_exception): Bypass on *-*-solaris2.1[0-9]*.
(solaris_int_types): Remove.
(solaris_longjmp_noreturn): Remove.
(solaris_mutex_init_2): Remove.
(solaris_once_init_2): Remove.
(solaris_sys_va_list): Remove.
* fixincl.x: Regenerate.
* tests/base/iso/setjmp_iso.h: Remove.
* tests/base/pthread.h [SOLARIS_MUTEX_INIT_2_CHECK]: Remove.
[SOLARIS_ONCE_INIT_1_CHECK]: Remove wrapping done by
solaris_once_init_2.
[SOLARIS_ONCE_INIT_2_CHECK]: Remove.
* tests/base/sys/int_types.h: Remove.
* tests/base/sys/va_list.h: Remove.

contrib:
* config-list.mk (LIST): Remove sparc-sun-solaris2.9, i686-solaris2.9.

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

10 years agogcc/ChangeLog:
vp [Tue, 22 Apr 2014 11:34:52 +0000 (11:34 +0000)]
gcc/ChangeLog:

2014-04-22  Vidya Praveen  <vidyapraveen@arm.com>

* aarch64.md (float<GPI:mode><GPF:mode>2): Remove.
(floatuns<GPI:mode><GPF:mode>2): Remove.
(<optab><fcvt_target><GPF:mode>2): New pattern for equal width float
and floatuns conversions.
(<optab><fcvt_iesize><GPF:mode>2): New pattern for inequal width float
and floatuns conversions.
* iterators.md (fcvt_target, FCVT_TARGET): Support SF and DF modes.
(w1,w2): New mode attributes for inequal width conversions.

gcc/testsuite/ChangeLog:

2014-04-22  Vidya Praveen  <vidyapraveen@arm.com>

* gcc.target/aarch64/vect_cvtf_1.c: New.

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

10 years ago[AArch64] Add a space to memory asm code between base register and offset.
mshawcroft [Tue, 22 Apr 2014 11:02:20 +0000 (11:02 +0000)]
[AArch64] Add a space to memory asm code between base register and offset.

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