platform/upstream/linaro-gcc.git
8 years ago2015-08-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Tue, 4 Aug 2015 02:11:58 +0000 (02:11 +0000)]
2015-08-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/67043
    * loop-invariant.c (move_invariant_reg): Recompute luids in loop
    preheader after hoisting invariant in it.
    (find_defs): Force recomputation of all luids.

    gcc/testsuite/
    PR tree-optimization/67043
    * gcc.dg/pr67043.c: New test.

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

8 years ago * plugin/plugin-nvptx.c: Don't include dlfcn.h.
nathan [Tue, 4 Aug 2015 00:40:18 +0000 (00:40 +0000)]
* plugin/plugin-nvptx.c: Don't include dlfcn.h.
(cuda_errlist): Constify.
(errmsg):  Move into ...
(cuda_error): ... here.  Make smaller.
(_XSTR, _STR): Delete.
(cuda_synames): Delete.
(verify_device_library): Delete.
(nvptx_init): Don't call it.

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

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

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

8 years ago syscall: RawSockaddr fix for ppc64, ppc64le
ian [Mon, 3 Aug 2015 21:18:56 +0000 (21:18 +0000)]
syscall:  RawSockaddr fix for ppc64, ppc64le

    The struct RawSockaddr contains a field Data which
    should be uint8 on ppc64 and ppc64le, but is declared
    as int8 in gccgo.  This change adds a two new files
    which contain the structure declaration for
    RawSockaddr, one with the correct types for for ppc64
    and ppc64le, and the other for non-ppc64 platforms.

    Fixes golang/go#11469

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

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

8 years agogcc/
bergner [Mon, 3 Aug 2015 21:11:20 +0000 (21:11 +0000)]
gcc/
* config/rs6000/htm.md (tabort.): Restrict the source operand to
using a base register.

gcc/testsuite/
* gcc.target/powerpc/htm-tabort-no-r0.c: New test.

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

8 years agoRefactoring of timevar API
dmalcolm [Mon, 3 Aug 2015 20:14:21 +0000 (20:14 +0000)]
Refactoring of timevar API

gcc/ChangeLog:
* main.c (main): Pass in NULL for toplev's external_timer.
* timevar.c: Include coretypes.h.
(class timer::named_items): New.
(timer::named_items::named_items): New.
(timer::named_items::~named_items): New.
(timer::named_items::push): New.
(timer::named_items::pop): New.
(timer::named_items::print): New.
(timer::timer): Initialize field "m_jit_client_items".
(timer::~timer): New.
(timer::push): Move bulk of implementation to...
(timer::push_internal): ...here.  New function.
(timer::pop): Move bulk of implementation to...
(timer::pop_internal): ...here.  New function.
(timer::push_client_item): New.
(timer::pop_client_item): New.
(timer::print_row): New function, taken from timer::print.
(timer::print): Print "GCC items" header if we also have client
items.  Move row-printing to timer::print_row.  Print any client
items.
(timer::get_topmost_item_name): New method.
* timevar.def (TV_JIT_ACQUIRING_MUTEX): New.
(TV_JIT_CLIENT_CODE): New.
* timevar.h (timer::push_client_item): New declaration.
(timer::pop_client_item): New declaration.
(timer::get_topmost_item_name): New method.
(timer::push_internal): New declaration.
(timer::pop_internal): New declaration.
(timer::print_row): New declaration.
(timer::named_items): New declaration.
(timer::m_jit_client_items): New field.
(timer): Add friend class named_items.
(auto_timevar::auto_timevar): Add timer param.
(auto_timevar::~auto_timevar): Use field "m_timer".
(auto_timevar::m_timer): New field.
* toplev.c (initialize_rtl): Add g_timer as param when
constructing auto_timevar instance.
(toplev::toplev): Add "external_timer" param, and use it to
initialize the "g_timer" global if non-NULL.
(toplev::~toplev): If this created "g_timer", delete it.
* toplev.h (toplev::toplev): Replace "use_TV_TOTAL" bool param
with "external_timer" timer *.

gcc/jit/ChangeLog:
* docs/topics/compatibility.rst (LIBGCCJIT_ABI_4): New.
* docs/topics/contexts.rst (GCC_JIT_BOOL_OPTION_DUMP_SUMMARY):
We no longer show a profile.
* docs/topics/index.rst (Topic Reference): Add performance.rst.
* docs/topics/performance.rst: New file.
* docs/_build/texinfo/libgccjit.texi: Regenerate.
* jit-playback.c (gcc::jit::playback::context::compile): Add timer
param when constructing the "toplev" instance.
(gcc::jit::playback::context::acquire_mutex): Add timer param when
constructing auto_timevar instance.
(gcc::jit::playback::context::make_fake_args): If we have a timer,
add "-ftime-report".
(gcc::jit::playback::context::invoke_driver): Add timer param when
constructing auto_timevar instance.
(gcc::jit::playback::context::dlopen_built_dso): Likewise.
* jit-playback.h (gcc::jit::playback::context::get_timer): New accessor.
* jit-recording.c: Include timevar.h.
(gcc::jit::recording::context::context): Initialize field "m_timer".
* jit-recording.h: Add forward declaration of class timer.
(gcc::jit::recording::context::set_timer): New method.
(gcc::jit::recording::context::get_timer): New method.
(gcc::jit::recording::context::m_timer): New field.
* libgccjit++.h (gccjit::timer): New class.
(gccjit::auto_time): New class.
(gccjit::context::set_timer): New method.
(gccjit::context::get_timer): New.
(gccjit::timer::timer): New.
(gccjit::timer::push): New.
(gccjit::timer::pop): New.
(timer::print): New.
(timer::get_inner_timer): New.
(timer::release): New.
(auto_time::auto_time): New.
(auto_time::~auto_time): New.
* libgccjit.c: Include timevar.h.
(struct gcc_jit_timer): New.
(gcc_jit_timer_new): New function.
(gcc_jit_timer_release): New function.
(gcc_jit_context_set_timer): New function.
(gcc_jit_context_get_timer): New function.
(gcc_jit_timer_push): New function.
(gcc_jit_timer_pop): New function.
(gcc_jit_timer_print): New function.
* libgccjit.h (LIBGCCJIT_HAVE_TIMING_API): New macro.
(gcc_jit_timer): New typedef.
(gcc_jit_timer_new): New function.
(gcc_jit_timer_release): New function.
(gcc_jit_context_set_timer): New function.
(gcc_jit_context_get_timer): New function.
(gcc_jit_timer_push): New function.
(gcc_jit_timer_pop): New function.
(gcc_jit_timer_print): New function.
* libgccjit.map (LIBGCCJIT_ABI_4): New.
(gcc_jit_timer_new): New function.
(gcc_jit_timer_release): New function.
(gcc_jit_context_set_timer): New function.
(gcc_jit_context_get_timer): New function.
(gcc_jit_timer_push): New function.
(gcc_jit_timer_pop): New function.
(gcc_jit_timer_print): New function.

gcc/testsuite/ChangeLog:
* jit.dg/test-benchmark.c (test_jit): Add param "timer" and use
it to push/pop timing items.
(main): For each optimization level, create a gcc_jit_timer, and
time all of the iteration within that level cumulatively.
* jit.dg/test-error-gcc_jit_timer_pop-mismatch.c: New test case.
* jit.dg/test-error-gcc_jit_timer_pop-too-many.c: New test case.

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

8 years ago compiler: Don't allow multiple function declarations.
ian [Mon, 3 Aug 2015 19:55:00 +0000 (19:55 +0000)]
compiler: Don't allow multiple function declarations.

    Fixes golang/go#11573.

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

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

8 years ago PR middle-end/64744
law [Mon, 3 Aug 2015 19:34:31 +0000 (19:34 +0000)]
PR middle-end/64744
PR middle-end/48470
PR middle-end/43404
* cfgexpand.c (expand_one_var): Add check if stack is going to
be used in naked function.
* expr.c (expand_expr_addr_expr_1): Remove excess checking
whether expression should not reside in MEM.
* function.c (use_register_for_decl): Do not use registers for
non-register things (volatile, float, BLKMode) in naked functions.

PR middle-end/64744
PR middle-end/48470
PR middle-end/43404
* gcc.target/arm/pr43404.c : New testcase.
* gcc.target/arm/pr48470.c : New testcase.
* gcc.target/arm/pr64744-1.c : New testcase.
* gcc.target/arm/pr64744-2.c : New testcase.

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

8 years ago compiler: Don't make erroneous type descriptors.
ian [Mon, 3 Aug 2015 18:53:56 +0000 (18:53 +0000)]
compiler: Don't make erroneous type descriptors.

    There is no need to make type descriptors for named types when there
    are errors during package compilation.  Particularly, if the error in
    package compilation is from a malformed named type, there is no
    guarantee a type descriptor can be created.

    Fixes golang/go#11560.

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

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

8 years ago libgo/testsuite: kill sleep process in gotest
ian [Mon, 3 Aug 2015 18:23:42 +0000 (18:23 +0000)]
libgo/testsuite: kill sleep process in gotest

    This change modifies the "gotest" shell script
    to kill all processes, including "sleep", spawned
    by the timeout subshell. This prevents the sleep
    process from living beyond the gotest process.

    BACKGROUND

    The "gotest" shell script spawns "sleep" processes
    in the background to kill off test cases that run
    past their specified timeout. There are commands
    included that appear to kill the sleep process,
    but they only kill the parent shell, causing the
    sleep process to reparent.

    The orphaned sleep process can cause issues when
    gotest is run under some build systems, such as
    Ninja [0]. The particular issue with Ninja is the
    method it uses to identify terminated processes:
    it creates a pipe, passes the write end to the
    child process, and waits for EOF. In the case of
    libgo/gotest, the orphaned sleep process inherits
    the pipe FD and keeps it open for 4 minutes by
    default.

    [0] https://github.com/martine/ninja

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

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

8 years ago PR go/67101
ian [Mon, 3 Aug 2015 17:54:50 +0000 (17:54 +0000)]
PR go/67101

    runtime: Remove call to __builtin_frame_address.

    __builtin_frame_address was only supposed to use nonzero arguments
    for debugging purposes.  Calling it with nonzero arguments can have
    unpredictable results and uses are now marked unsafe when
    -Wframe-address is enabled.

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

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

8 years ago PR target/67060
danglin [Mon, 3 Aug 2015 17:26:19 +0000 (17:26 +0000)]
PR target/67060
* config/pa/pa.md (call_reg_64bit): Remove reg:DI 1 clobber.
Adjust splits to match new pattern.

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

8 years ago2015-08-03 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Mon, 3 Aug 2015 17:06:24 +0000 (17:06 +0000)]
2015-08-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/vector.md (VEC_L): Add KFmode and TFmode.
(VEC_M): Likewise.
(VEC_N): Likewise.
(mov<mode>, VEC_M iterator): Add support for IEEE 128-bit floating
point in VSX registers.

* config/rs6000/constraints.md (wb constraint): Document unused
w<x> constraint.
(we constraint): Likewise.
(wo constraint): Likewise.
(wp constraint): New constraint for IEEE 128-bit floating point in
VSX registers.
(wq constraint): Likewise.

* config/rs6000/predicates.md (easy_fp_constant): Add support for
IEEE 128-bit floating point in VSX registers.
(easy_scalar_constant): Likewise.

* config/rs6000/rs6000.c (rs6000_debug_reg_global): Add new
constraints (wp, wq) for IEEE 128-bit floating point in VSX
registers.
(rs6000_init_hard_regno_mode_ok): Likewise.

* config/rs6000/vsx.md (VSX_LE_128): Add support for IEEE 128-bit
floating point in VSX registers.
(VSX_L): Likewise.
(VSX_M): Likewise.
(VSX_M2): Likewise.
(VSm): Likewise.
(VSs): Likewise.
(VSr): Likewise.
(VSa): Likewise.
(VSv): Likewise.
(vsx_le_permute_<mode>): Add support to properly swap bytes for
IEEE 128-bit floating point in VSX registers on little endian.
(vsx_le_undo_permute_<mode>): Likewise.
(vsx_le_perm_load_<mode>): Likewise.
(vsx_le_perm_store_<mode>): Likewise.
(splitters for IEEE 128-bit fp moves): Likewise.

* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Add wp and
wq constraints.

* config/rs6000/altivec.md (VM): Add support for IEEE 128-bit
floating point in VSX registers.
(VM2): Likewise.

* doc/md.text (Machine Constraints): Document wp and wq
constraints on PowerPC.

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

8 years agoAdd a testcase for PR tree-optimization/67077
hjl [Mon, 3 Aug 2015 16:58:03 +0000 (16:58 +0000)]
Add a testcase for PR tree-optimization/67077

PR tree-optimization/67077
* gcc.dg/pr67077.c: New test.

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

8 years ago2015-08-03 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 3 Aug 2015 16:56:39 +0000 (16:56 +0000)]
2015-08-03  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66942
* trans-expr.c (gfc_conv_procedure_call): Avoid NULL pointer reference

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

8 years ago PR middle-end/66314
law [Mon, 3 Aug 2015 16:26:13 +0000 (16:26 +0000)]
PR middle-end/66314
PR gcov-profile/66899
* tree-ssa-threadupdate.c (mark_threaded_blocks): Correctly
iterate over the jump threading paths when an element in the
jump threading paths array is eliminated.

PR middle-end/66314
PR gcov-profile/66899
* gcc.dg/pr66899.c: New test.
* gcc.dg/pr66314.c: New test.

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

8 years ago PR libstdc++/67078
redi [Mon, 3 Aug 2015 15:56:17 +0000 (15:56 +0000)]
PR libstdc++/67078
* include/bits/range_access.h (size, empty, data): Fix _N bad name.

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

8 years ago * Makefile.in (OBJS): Put gimple-match.o and generic-match.o first.
segher [Mon, 3 Aug 2015 15:33:45 +0000 (15:33 +0000)]
* Makefile.in (OBJS): Put gimple-match.o and generic-match.o first.

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

8 years agoAvoid recomputing the defining predicate chains for the same PHI
ppalka [Mon, 3 Aug 2015 14:57:25 +0000 (14:57 +0000)]
Avoid recomputing the defining predicate chains for the same PHI

gcc/ChangeLog:

* tree-ssa-uninit.c (find_uninit_use): Declare and pass to
is_use_properly_guarded the variable def_preds.  Free its
contents before returning.
(prune_uninit_phi_opnds_in_unrealizable_paths): Same.
(is_use_properly_guarded): Replace local variable def_preds with
a parameter.  Adjust accordingly.  Only update *def_preds if it's
the empty vector.

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

8 years ago PR c/67088
mpolacek [Mon, 3 Aug 2015 13:55:28 +0000 (13:55 +0000)]
PR c/67088
* c-decl.c (check_bitfield_type_and_width): Add location parameter.
Use it.
(grokdeclarator): Pass LOC down to check_bitfield_type_and_width.

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

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 13:45:22 +0000 (13:45 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (simplify::for_subst_vec): New member.
(binary_ok): New helper for for lowering.
(lower_for): Delay substituting operators into result expressions
if we can merge the results eventually again.
(capture_info::walk_result): Adjust for user_id appearing as
result expression operator.
(expr::gen_transform): Likewise.
(dt_simplify::gen_1): Likewise.
(dt_simplify::gen): Pass not substituted operators to tail
functions or initialize local variable with it.
(decision_tree::gen): Adjust function signature.
* match.pd: Fix tests against global code and add default
cases to switch stmts.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 13:28:46 +0000 (13:28 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (simplify::for_subst_vec): New member.
(binary_ok): New helper for for lowering.
(lower_for): Delay substituting operators into result expressions
if we can merge the results eventually again.
(capture_info::walk_result): Adjust for user_id appearing as
result expression operator.
(expr::gen_transform): Likewise.
(dt_simplify::gen_1): Likewise.
(dt_simplify::gen): Pass not substituted operators to tail
functions or initialize local variable with it.
(decision_tree::gen): Adjust function signature.
* match.pd: Fix tests against global code and add default
cases to switch stmts.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 13:20:22 +0000 (13:20 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (dt_simplify::gen): Create captures array
with an initializer.

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

8 years agogcc/ChangeLog:
uweigand [Mon, 3 Aug 2015 11:48:57 +0000 (11:48 +0000)]
gcc/ChangeLog:

* configure.ac: Set aliasing_flags to -fno-strict-aliasing if
the host compiler is affected by placement new aliasing bug.
* configure: Regenerate.
* Makefile.in (ALIASING_FLAGS): New variable.
(ALL_CXXFLAGS): Add $(ALIASING_FLAGS).

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

8 years ago[ARM] PR target/66731 Fix vnmul insn with -frounding-math
nsz [Mon, 3 Aug 2015 11:12:00 +0000 (11:12 +0000)]
[ARM] PR target/66731 Fix vnmul insn with -frounding-math

gcc:

PR target/66731
* config/arm/vfp.md (negmuldf3_vfp): Add new pattern.
(negmulsf3_vfp): Likewise.
(muldf3negdf_vfp): Disable for -frounding-math.
(mulsf3negsf_vfp): Likewise.
* config/arm/arm.c (arm_new_rtx_costs): Fix NEG cost for VNMUL,
fix MULT cost with -frounding-math.

gcc/testsuite:

PR target/66731
* gcc.target/arm/vnmul-1.c: New.
* gcc.target/arm/vnmul-2.c: New.
* gcc.target/arm/vnmul-3.c: New.
* gcc.target/arm/vnmul-4.c: New.

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

8 years agoFix random class_allocate_18.f90 failure
mikael [Mon, 3 Aug 2015 10:03:55 +0000 (10:03 +0000)]
Fix random class_allocate_18.f90 failure

PR fortran/64921
gcc/fortran/
* class.c (generate_finalization_wrapper): Set finalization
procedure symbol's always_explicit attribute.
gcc/testsuite/
* gfortran.dg/class_allocate_20.f90: New.

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

8 years ago[RTL-ifcvt] Improve conditional select ops on immediates
ktkachov [Mon, 3 Aug 2015 08:14:42 +0000 (08:14 +0000)]
[RTL-ifcvt] Improve conditional select ops on immediates

* ifcvt.c (noce_try_store_flag_constants): Make logic of the case
when diff == STORE_FLAG_VALUE or diff == -STORE_FLAG_VALUE more
explicit.  Prefer to add the flag whenever possible.
(noce_process_if_block): Try noce_try_store_flag_constants before
noce_try_cmove.

* gcc.target/aarch64/csel_bfx_1.c: New test.
* gcc.target/aarch64/csel_imms_inc_1.c: Likewise.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 07:39:12 +0000 (07:39 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct sinfo, struct sinfo_hashmap_traits, sinfo_map_t):
New hash-map to record equivalent transforms.
(dt_node::analyze): Populate the equivalent transforms hash-map.
(dt_simplify::info): Add reference to hash-map entry.
(dt_simplify::gen): If we have split out a function for the
transform, generate a call to it.
(sinfo_hashmap_traits::hash): New function.
(compare_op): New helper function for ...
(sinfo_hashmap_traits::equal_keys): ... this new function.
(decision_tree::gen): Split out common equivalent transforms
into functions.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 07:28:11 +0000 (07:28 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (fold_gimple_assign): Remove folding of
the comparison in COND_EXPRs.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 07:27:40 +0000 (07:27 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

* gimple-match-head.c (gimple_simplify): For [VEC_]COND_EXPRs
on the rhs of assignments first simplify the embedded
GENERIC condition.

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

8 years ago2015-08-03 Richard Biener <rguenther@suse.de>
rguenth [Mon, 3 Aug 2015 07:13:36 +0000 (07:13 +0000)]
2015-08-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66917
* tree-vectorizer.h (struct dataref_aux): Add base_element_aligned
field.
(DR_VECT_AUX): New macro.
(set_dr_misalignment): Adjust.
(dr_misalignment): Likewise.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
Compute whether the base is at least element aligned.
* tree-vect-stmts.c (ensure_base_align): Adjust.
(vectorizable_store): If the base is not element aligned
preserve alignment of the original access if misalignment is unknown.
(vectorizable_load): Likewise.

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

8 years ago * MAINTAINERS (loop ivopts): Add the entry and myself.
amker [Mon, 3 Aug 2015 01:54:28 +0000 (01:54 +0000)]
* MAINTAINERS (loop ivopts): Add the entry and myself.

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

8 years agoDaily bump.
gccadmin [Mon, 3 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

8 years agogcc/ChangeLog
msebor [Sun, 2 Aug 2015 23:14:18 +0000 (23:14 +0000)]
gcc/ChangeLog
2015-07-28  Martin Sebor  <msebor@redhat.com>

    * c-family/c.opt (-Wframe-address): New warning option.
    * doc/invoke.texi (Wframe-address): Document it.
    * doc/extend.texi (__builtin_frame_address, __builtin_return_address):
    Clarify possible effects of calling the functions with non-zero
    arguments and mention -Wframe-address.
    * builtins.c (expand_builtin_frame_address): Handle -Wframe-address.

gcc/testsuite/ChangeLog
2015-07-28  Martin Sebor  <msebor@redhat.com>

    * g++.dg/Wframe-address-in-Wall.C: New test.
    * g++.dg/Wframe-address.C: New test.
    * g++.dg/Wno-frame-address.C: New test.
    * gcc.dg/Wframe-address-in-Wall.c: New test.
    * gcc.dg/Wframe-address.c: New test.
    * gcc.dg/Wno-frame-address.c: New test.

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

8 years agoImprove -Wmisleading-indentation heuristics
ppalka [Sun, 2 Aug 2015 17:39:23 +0000 (17:39 +0000)]
Improve -Wmisleading-indentation heuristics

gcc/c-family/ChangeLog:

* c-indentation.c (should_warn_for_misleading_indentation):
Improve heuristics.

gcc/testsuite/ChangeLog:

* c-c++-common/Wmisleading-indentation.c: Add more tests.

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

8 years agoRemove is_first_nonwhitespace_on_line(), instead improve get_visual_column()
ppalka [Sun, 2 Aug 2015 17:35:33 +0000 (17:35 +0000)]
Remove is_first_nonwhitespace_on_line(), instead improve get_visual_column()

gcc/c-family/ChangeLog:

* c-indentation.c (get_visual_column): Add parameter first_nws,
use it.  Update comment documenting the function.
(is_first_nonwhitespace_on_line): Remove.
(should_warn_for_misleading_indentation): Replace usage of
of is_first_nonwhitespace_on_line with get_visual_column.

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

8 years agoRefactor entry point to -Wmisleading-indentation
ppalka [Sun, 2 Aug 2015 17:31:55 +0000 (17:31 +0000)]
Refactor entry point to -Wmisleading-indentation

gcc/c-family/ChangeLog:

* c-indentation.h (struct token_indent_info): Define.
(get_token_indent_info): Define.
(warn_for_misleading_information): Declare.
* c-common.h (warn_for_misleading_information): Remove.
* c-identation.c (warn_for_misleading_indentation):
Change declaration to take three token_indent_infos.  Adjust
accordingly.
* c-identation.c (should_warn_for_misleading_indentation):
Likewise.  Bail out early if the body is a compound statement.
(guard_tinfo_to_string): Define.

gcc/c/ChangeLog:

* c-parser.c (c_parser_if_body): Take token_indent_info
argument. Call warn_for_misleading_indentation even when the
body is a semicolon.  Extract token_indent_infos corresponding
to the guard, body and next tokens.  Adjust call to
warn_for_misleading_indentation accordingly.
(c_parser_else_body): Likewise.
(c_parser_if_statement): Likewise.
(c_parser_while_statement): Likewise.
(c_parser_for_statement): Likewise.

gcc/cp/ChangeLog:

* parser.c (cp_parser_selection_statement): Move handling of
semicolon body to ...
(cp_parser_implicitly_scoped_statement): .. here.  Call
warn_for_misleading_indentation even when the body is a
semicolon.  Extract token_indent_infos corresponding to the
guard, body and next tokens.  Adjust call to
warn_for_misleading_indentation accordingly.  Take
token_indent_info argument.
(cp_parser_already_scoped_statement): Likewise.
(cp_parser_selection_statement, cp_parser_iteration_statement):
Extract a token_indent_info corresponding to the guard token.

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

8 years ago2015-08-01 Michael Collison <michael.collison@linaro.org
collison [Sun, 2 Aug 2015 05:15:55 +0000 (05:15 +0000)]
2015-08-01  Michael Collison  <michael.collison@linaro.org
    Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

* gcc/config/arm/arm.md (*arm_smin_cmp): New pattern.
(*arm_umin_cmp): Likewise.

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

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

8 years agoFix PR 66521
ctice [Sun, 2 Aug 2015 01:17:39 +0000 (01:17 +0000)]
Fix PR 66521

libvtv/ChangeLog

2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * Makefile.am: Update to match latest tree.
        * Makefile.in: Regenerate.
        * testsuite/lib/libvtv: Brought up to date.
        * vtv_malloc.cc (VTV_DEBUG): Update function call to match renamed
        function (old bug!).
        * vtv_rts.cc (debug_functions, debug_init, debug_verify_vtable): Update
        initializations to work correctly with VTV_DEBUG defined.

gcc/ChangeLog:

2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * vtable-verify.c (vtbl_mangled_name_types, vtbl_mangled_name_ids): New
        global variables.
        (vtbl_find_mangled_name):  New function.
        (vtbl_register_mangled_name):  New function.
        (vtbl_map_get_node):  If DECL_ASSEMBLER_NAME is "<anon>", look up
        mangled name in mangled name vectors.
        (find_or_create_vtbl_map_node):  Ditto.
        (var_is_used_for_virtual_call_p):  Add recursion_depth parameter;
        update recursion_depth on function entry; pass it to every recursive
        call; automatically exit if depth > 25 (give up looking at that point).
        (verify_bb_vtables):  Initialize recursion_depth and pass it to
        var_is_used_for_virtual_call_p.
        * vtable-verify.h (vtbl_mangbled_name_types, vtbl_mangled_name_ids): New
        global variable decls.
        (vtbl_register_mangled_name): New extern function decl.

gcc/cp/ChangeLog:
2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * mangle.c : Add vtable-verify.h to include files.
        (get_mangled_vtable_map_var_name):  If the DECL_ASSEMBLER_NAME
        is "<anon>" get the real mangled name for the class instead, and
        also store the real mangled name in a vector for use later.

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

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

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

8 years ago2015-08-01 Paul Thomas <pault@gcc.gnu.org>
pault [Sat, 1 Aug 2015 18:37:25 +0000 (18:37 +0000)]
2015-08-01  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/67091
* trans-intrinsic.c (gfc_conv_associated): Add the pre and post
blocks for the second argument to se.

2015-08-01  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/67091
* gfortran.dg/associated_target_6.f03: New test

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

8 years agoAllow non-overflow ops in reductions
vries [Sat, 1 Aug 2015 08:29:29 +0000 (08:29 +0000)]
Allow non-overflow ops in reductions

2015-08-01  Tom de Vries  <tom@codesourcery.com>

* tree.c (operation_can_overflow, operation_no_trapping_overflow): New
function.
* tree.h (operation_can_overflow, operation_no_trapping_overflow):
Declare.
* tree-vect-loop.c (vect_is_simple_reduction_1): Use
operation_no_trapping_overflow.  Allow non-overflow operations.
* graphite-sese-to-poly.c (is_reduction_operation_p): Allow non-overflow
operations.

* gcc.dg/autopar/reduc-2char.c (init_arrays): Mark with attribute
optimize ("-ftree-parallelize-loops=0").
Add successful scans for 2 detected reductions.  Add xfail scans for 3
detected reductions.
* gcc.dg/autopar/reduc-2short.c: Same.
* gcc.dg/autopar/reduc-8.c (init_arrays): Mark with attribute
optimize ("-ftree-parallelize-loops=0").  Add successful scans for 2
detected reductions.
* gcc.dg/vect/trapv-vect-reduc-4.c: Update scan to match vectorized min
and max reductions.

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

8 years agoDaily bump.
gccadmin [Sat, 1 Aug 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago compiler: Report errors for malformed builtin calls.
ian [Fri, 31 Jul 2015 23:17:49 +0000 (23:17 +0000)]
compiler: Report errors for malformed builtin calls.

    Errors reported from malformed builtin calls are handled in a later
    pass than the one in which they are detected.  If a malformed builtin
    call is lowered into an error expression too early, these errors will
    never be reported.

    Fixes golang/go#11561.

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

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

8 years agoPR target/67049
kkojima [Fri, 31 Jul 2015 22:19:51 +0000 (22:19 +0000)]
PR target/67049
* config/sh/sh.md (GOTaddr2picreg): Fix typo added with the last change.

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

8 years ago compiler: Check the type in function declarations.
ian [Fri, 31 Jul 2015 22:16:12 +0000 (22:16 +0000)]
compiler: Check the type in function declarations.

    Function declarations don't create a block where the variables listed
    in the parameter list are declared.  Because there are no variables
    declared, the types of the parameter variables is unchecked, allowing
    for invalid values to be used as the type.  This patch adds a special
    case to the check_types pass for function declarations.

    Fixes golang/go#11567.

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

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

8 years ago compiler: Update unicode tables.
ian [Fri, 31 Jul 2015 19:11:18 +0000 (19:11 +0000)]
compiler: Update unicode tables.

    Fixes golang/go#11569.

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

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

8 years ago * MAINTAINERS (nvptx): Add self.
nathan [Fri, 31 Jul 2015 17:54:31 +0000 (17:54 +0000)]
* MAINTAINERS (nvptx): Add self.

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

8 years ago compiler: Don't allow builtin function values.
ian [Fri, 31 Jul 2015 17:52:38 +0000 (17:52 +0000)]
compiler: Don't allow builtin function values.

    According to the spec, http://golang.org/ref/spec#Built-in_functions:
    "built-in functions do not have standard Go types, so they can only
    appear in call expressions; they cannot be used as function values."

    Fixes golang/go#11570.

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

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

8 years ago[ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split
ktkachov [Fri, 31 Jul 2015 16:39:35 +0000 (16:39 +0000)]
[ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

* config/arm/arm.md (*if_neg_move): Convert to insn_and_split.
Enable for TARGET_32BIT.
(*if_move_neg): Likewise.

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

8 years ago * config/m32r/m32r.c (m32r_attribute_identifier): New function.
nickc [Fri, 31 Jul 2015 15:55:16 +0000 (15:55 +0000)]
* config/m32r/m32r.c (m32r_attribute_identifier): New function.
Returns true for __model__.
(TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.

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

8 years ago PR target/66870
amodra [Fri, 31 Jul 2015 14:05:42 +0000 (14:05 +0000)]
PR target/66870
* config/rs6000/rs6000.c (machine_function): Add split_stack_argp_used.
(rs6000_emit_prologue): Set it.
(rs6000_set_up_by_prologue): Specify r12 when split_stack_argp_used.

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

8 years ago PR sanitizer/66977
mpolacek [Fri, 31 Jul 2015 11:12:57 +0000 (11:12 +0000)]
PR sanitizer/66977
* typeck.c (get_member_function_from_ptrfunc): Don't sanitize
RSHIFT_EXPR.

* g++.dg/ubsan/pr66977.C: New test.

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

8 years ago2015-07-31 Richard Biener <rguenther@suse.de>
rguenth [Fri, 31 Jul 2015 10:36:56 +0000 (10:36 +0000)]
2015-07-31  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_binary_loc): Remove X ^ C1 == C2
-> X == (C1 ^ C2) which is already implemented in match.pd.
Remove redundant dispatching to fold_relational_const.
Move unordered self and NaN compares ...
* match.pd: ... as patterns here.  Remove some stray captures
and add a comment.

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

8 years agoRefactoring masked built-in decls to use proper mask type.
kyukhin [Fri, 31 Jul 2015 09:14:07 +0000 (09:14 +0000)]
Refactoring masked built-in decls to use proper mask type.

gcc/
* config/i386/i386.c
(bdesc_special_args): Convert mask type from signed to unsigned for
masked builtins.
(ix86_expand_args_builtin): Do not handle UINT_FTYPE_V2DF,
UINT64_FTYPE_V2DF, UINT64_FTYPE_V4SF, V16QI_FTYPE_V8DI,
V16HI_FTYPE_V16SI, V16SI_FTYPE_V16SI, V16SF_FTYPE_FLOAT,
V8HI_FTYPE_V8DI, V8UHI_FTYPE_V8UHI, V8SI_FTYPE_V8DI, V8SF_FTYPE_V8DF,
V8DI_FTYPE_INT64, V8DI_FTYPE_V4DI, V8DI_FTYPE_V8DI, V8DF_FTYPE_DOUBLE,
V8DF_FTYPE_V8SI, V16SI_FTYPE_V16SI_V16SI, V16SF_FTYPE_V16SF_V16SI,
V8DI_FTYPE_V8DI_V8DI, V8DF_FTYPE_V8DF_V8DI, V4SI_FTYPE_V4SF_V4SF,
V4SF_FTYPE_V4SF_UINT64, V2UDI_FTYPE_V4USI_V4USI, V2DI_FTYPE_V2DF_V2DF,
V2DF_FTYPE_V2DF_UINT64, V4UDI_FTYPE_V8USI_V8USI, QI_FTYPE_V8DI_V8DI,
HI_FTYPE_V16SI_V16SI, HI_FTYPE_HI_INT, V16SF_FTYPE_V16SF_V16SF_V16SF,
V16SF_FTYPE_V16SF_V16SI_V16SF, V16SF_FTYPE_V16SI_V16SF_HI,
V16SF_FTYPE_V16SI_V16SF_V16SF, V16SI_FTYPE_V16SF_V16SI_HI,
V8DI_FTYPE_V8SF_V8DI_QI, V8SF_FTYPE_V8DI_V8SF_QI, V8DI_FTYPE_PV4DI,
V8DF_FTYPE_V8DI_V8DF_QI, V16SI_FTYPE_V16SI_V16SI_V16SI,
V2DI_FTYPE_V2DI_V2DI_V2DI, V8DI_FTYPE_V8DF_V8DI_QI, V8DF_FTYPE_PV4DF,
V8SI_FTYPE_V8SI_V8SI_V8SI, V8DF_FTYPE_V8DF_V8DF_V8DF, UINT_FTYPE_V4SF,
V8DF_FTYPE_V8DF_V8DI_V8DF, V8DF_FTYPE_V8DI_V8DF_V8DF,
V8DF_FTYPE_V8SF_V8DF_QI, V8DI_FTYPE_V8DI_V8DI_V8DI, V16SF_FTYPE_PV4SF,
V8SF_FTYPE_V8DF_V8SF_QI, V8SI_FTYPE_V8DF_V8SI_QI, V16SI_FTYPE_PV4SI,
V2DF_FTYPE_V2DF_V4SF_V2DF_QI, V4SF_FTYPE_V4SF_V2DF_V4SF_QI,
V8DI_FTYPE_V8DI_SI_V8DI_V8DI, QI_FTYPE_V8DF_V8DF_INT_QI,
HI_FTYPE_V16SF_V16SF_INT_HI, V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI,
VOID_FTYPE_PDOUBLE_V2DF_QI, VOID_FTYPE_PFLOAT_V4SF_QI,
V2DF_FTYPE_PCDOUBLE_V2DF_QI, V4SF_FTYPE_PCFLOAT_V4SF_QI.
* config/i386/i386-builtin-types.def
(V16QI_FTYPE_V16SI): Remove.
(V8DF_FTYPE_V8SI): Ditto.
(V8HI_FTYPE_V8DI): Ditto.
(V8SI_FTYPE_V8DI): Ditto.
(V8SF_FTYPE_V8DF): Ditto.
(V8SF_FTYPE_V8DF_V8SF_QI): Ditto.
(V16HI_FTYPE_V16SI): Ditto.
(V16SF_FTYPE_V16HI): Ditto.
(V16SF_FTYPE_V16HI_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI): Ditto.
(V4DI_FTYPE_V4DI): Ditto.
(V16SI_FTYPE_V16SF): Ditto.
(V16SF_FTYPE_FLOAT): Ditto.
(V8DF_FTYPE_DOUBLE): Ditto.
(V8DI_FTYPE_INT64): Ditto.
(V8DI_FTYPE_V4DI): Ditto.
(V16QI_FTYPE_V8DI): Ditto.
(UINT_FTYPE_V4SF): Ditto.
(UINT64_FTYPE_V4SF): Ditto.
(UINT_FTYPE_V2DF): Ditto.
(UINT64_FTYPE_V2DF): Ditto.
(V16SI_FTYPE_V16SI): Ditto.
(V8DI_FTYPE_V8DI): Ditto.
(V16SI_FTYPE_PV4SI): Ditto.
(V16SF_FTYPE_PV4SF): Ditto.
(V8DI_FTYPE_PV2DI): Ditto.
(V8DF_FTYPE_PV2DF): Ditto.
(V4DI_FTYPE_PV2DI): Ditto.
(V4DF_FTYPE_PV2DF): Ditto.
(V16SI_FTYPE_PV2SI): Ditto.
(V16SF_FTYPE_PV2SF): Ditto.
(V8DI_FTYPE_PV4DI): Ditto.
(V8DF_FTYPE_PV4DF): Ditto.
(V8SF_FTYPE_FLOAT): Ditto.
(V4SF_FTYPE_FLOAT): Ditto.
(V4DF_FTYPE_DOUBLE): Ditto.
(V8SF_FTYPE_PV4SF): Ditto.
(V8SI_FTYPE_PV4SI): Ditto.
(V4SI_FTYPE_PV2SI): Ditto.
(V8SF_FTYPE_PV2SF): Ditto.
(V8SI_FTYPE_PV2SI): Ditto.
(V16SF_FTYPE_PV8SF): Ditto.
(V16SI_FTYPE_PV8SI): Ditto.
(V8DI_FTYPE_V8SF): Ditto.
(V4DI_FTYPE_V4SF): Ditto.
(V2DI_FTYPE_V4SF): Ditto.
(V64QI_FTYPE_QI): Ditto.
(V32HI_FTYPE_HI): Ditto.
(V8UHI_FTYPE_V8UHI): Ditto.
(V16UHI_FTYPE_V16UHI): Ditto.
(V32UHI_FTYPE_V32UHI): Ditto.
(V2UDI_FTYPE_V2UDI): Ditto.
(V4UDI_FTYPE_V4UDI): Ditto.
(V8UDI_FTYPE_V8UDI): Ditto.
(V4USI_FTYPE_V4USI): Ditto.
(V8USI_FTYPE_V8USI): Ditto.
(V16USI_FTYPE_V16USI): Ditto.
(V2DF_FTYPE_V2DF_UINT64): Ditto.
(V2DI_FTYPE_V2DF_V2DF): Ditto.
(V2UDI_FTYPE_V4USI_V4USI): Ditto.
(V8DF_FTYPE_V8DF_V8DI): Ditto.
(V4SF_FTYPE_V4SF_UINT64): Ditto.
(V4SI_FTYPE_V4SF_V4SF): Ditto.
(V16SF_FTYPE_V16SF_V16SI): Ditto.
(V64QI_FTYPE_V32HI_V32HI): Ditto.
(V32HI_FTYPE_V16SI_V16SI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI): Ditto.
(V32HI_FTYPE_V64QI_V64QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_INT_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V4SI): Ditto.
(V16SI_FTYPE_V16SI_V16SI): Ditto.
(V16SI_FTYPE_V32HI_V32HI): Ditto.
(V16SI_FTYPE_V16SI_SI): Ditto.
(V8DI_FTYPE_V8DI_V8DI): Ditto.
(V4UDI_FTYPE_V8USI_V8USI): Ditto.
(V8DI_FTYPE_V16SI_V16SI): Ditto.
(V8DI_FTYPE_V8DI_V2DI): Ditto.
(QI_FTYPE_QI): Ditto.
(SI_FTYPE_SI): Ditto.
(DI_FTYPE_DI): Ditto.
(QI_FTYPE_QI_QI): Ditto.
(QI_FTYPE_QI_INT): Ditto.
(HI_FTYPE_HI_INT): Ditto.
(SI_FTYPE_SI_INT): Ditto.
(DI_FTYPE_DI_INT): Ditto.
(HI_FTYPE_V16QI_V16QI): Ditto.
(SI_FTYPE_V32QI_V32QI): Ditto.
(DI_FTYPE_V64QI_V64QI): Ditto.
(QI_FTYPE_V8HI_V8HI): Ditto.
(HI_FTYPE_V16HI_V16HI): Ditto.
(SI_FTYPE_V32HI_V32HI): Ditto.
(QI_FTYPE_V4SI_V4SI): Ditto.
(QI_FTYPE_V8SI_V8SI): Ditto.
(QI_FTYPE_V2DI_V2DI): Ditto.
(QI_FTYPE_V4DI_V4DI): Ditto.
(QI_FTYPE_V8DI_V8DI): Ditto.
(HI_FTYPE_V16SI_V16SI): Ditto.
(HI_FTYPE_V16SI_V16SI_INT_HI): Ditto.
(QI_FTYPE_V8DF_V8DF_INT_QI): Ditto.
(HI_FTYPE_V16SF_V16SF_INT_HI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_V32HI): Ditto.
(V4SF_FTYPE_V4SF_V2DF_V4SF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SF): Ditto.
(V8DF_FTYPE_V8SF_V8DF_QI): Ditto.
(V8DI_FTYPE_V8DF_V8DI_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_V8DF): Ditto.
(V2DF_FTYPE_V2DF_V4SF_V2DF_QI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_V16SF): Ditto.
(V8SI_FTYPE_V8DF_V8SI_QI): Ditto.
(V8DI_FTYPE_PCCHAR_V8DI_QI): Ditto.
(V8SF_FTYPE_PCFLOAT_V8SF_QI): Ditto.
(V4SF_FTYPE_PCFLOAT_V4SF_QI): Ditto.
(V4DF_FTYPE_PCDOUBLE_V4DF_QI): Ditto.
(V2DF_FTYPE_PCDOUBLE_V2DF_QI): Ditto.
(V8SI_FTYPE_PCCHAR_V8SI_QI): Ditto.
(V4SI_FTYPE_PCCHAR_V4SI_QI): Ditto.
(V4DI_FTYPE_PCCHAR_V4DI_QI): Ditto.
(V2DI_FTYPE_PCCHAR_V2DI_QI): Ditto.
(V16SF_FTYPE_PCV8SF_V16SF_HI): Ditto.
(V16SI_FTYPE_PCV8SI_V16SI_HI): Ditto.
(V8DF_FTYPE_PCV2DF_V8DF_QI): Ditto.
(V8SF_FTYPE_PCV4SF_V8SF_QI): Ditto.
(V8DI_FTYPE_PCV2DI_V8DI_QI): Ditto.
(V8SI_FTYPE_PCV4SI_V8SI_QI): Ditto.
(V4DF_FTYPE_PCV2DF_V4DF_QI): Ditto.
(V4DI_FTYPE_PCV2DI_V4DI_QI): Ditto.
(VOID_FTYPE_PDOUBLE_V2DF_QI): Ditto.
(VOID_FTYPE_PFLOAT_V4SF_QI): Ditto.
(V16SI_FTYPE_V16SF_V16SI_HI): Ditto.
(V8DI_FTYPE_V8SF_V8DI_QI): Ditto.
(V8SF_FTYPE_V8DI_V8SF_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SI): Ditto.
(V2UDI_FTYPE_V2UDI_V2UDI_V2UDI): Ditto.
(V4USI_FTYPE_V4USI_V4USI_V4USI): Ditto.
(V8UHI_FTYPE_V8UHI_V8UHI_V8UHI): Ditto.
(V16UQI_FTYPE_V16UQI_V16UQI_V16UQI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI): Ditto.
(V2DF_FTYPE_V2DF_V2DI_V2DF): Ditto.
(V4DF_FTYPE_V4DF_V4DI_V4DF): Ditto.
(V8DF_FTYPE_V8DF_V8DI_V8DF): Ditto.
(V4SF_FTYPE_V4SF_V4SI_V4SF): Ditto.
(V8SF_FTYPE_V8SF_V8SI_V8SF): Ditto.
(V16SF_FTYPE_V16SF_V16SI_V16SF): Ditto.
(V8DI_FTYPE_V8DI_SI_V8DI_V8DI): Ditto.
(PVOID_FTYPE_PVOID_PVOID_ULONG): Ditto.
(V4SF_FTYPE_V2DF_V4SF_QI): Convert mask type from signed to unsigned.
(V4SF_FTYPE_V4DF_V4SF_QI): Ditto.
(V4SF_FTYPE_V8HI_V4SF_QI): Ditto.
(V8SF_FTYPE_V8HI_V8SF_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_QI): Ditto.
(V2DF_FTYPE_V4DF_INT_V2DF_QI): Ditto.
(V2DF_FTYPE_V8DF_INT_V2DF_QI): Ditto.
(V2DI_FTYPE_V2DI_INT_V2DI_QI): Ditto.
(V4DF_FTYPE_V8DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V8SF_INT_V4SF_QI): Ditto.
(V4SI_FTYPE_V2DF_V4SI_QI): Ditto.
(V4SI_FTYPE_V4SI_INT_V4SI_QI): Ditto.
(V4SI_FTYPE_V8HI_V8HI_V4SI_QI): Ditto.
(V4SI_FTYPE_V8SI_INT_V4SI_QI): Ditto.
(V8HI_FTYPE_V16QI_V16QI_V8HI_QI): Ditto.
(V8HI_FTYPE_V8SF_INT_V8HI_QI): Ditto.
(V8HI_FTYPE_V4SF_INT_V8HI_QI): Ditto.
(V8SF_FTYPE_V16SF_INT_V8SF_QI): Ditto.
(V4SF_FTYPE_V16SF_INT_V4SF_QI): Ditto.
(V8DF_FTYPE_V8DF_V2DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V4DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_INT_V8DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DI_INT_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_INT_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_INT_V16SF_HI): Ditto.
(V16SI_FTYPE_V16SI_V4SI_INT_V16SI_HI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SI_INT_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V4SF_INT_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_V8SF_INT_V16SF_HI): Ditto.
(V16HI_FTYPE_V32QI_V32QI_V16HI_HI): Ditto.
(V32HI_FTYPE_V64QI_V64QI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16SF_INT_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V8SI_INT_V16SI_HI): Ditto.
(V4SI_FTYPE_V16SI_INT_V4SI_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_INT_V16SI_HI): Ditto.
(V8SI_FTYPE_V16HI_V16HI_V8SI_QI): Ditto.
(V16SI_FTYPE_V32HI_V32HI_V16SI_HI): Ditto.
(V8SI_FTYPE_V8SI_INT_V8SI_QI): Ditto.
(V8SI_FTYPE_V16SI_INT_V8SI_QI): Ditto.
(V16SI_FTYPE_V16SI_V4SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16SI_INT_V16SI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_DI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_SI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_HI): Ditto.
(V8DI_FTYPE_V8DI_V2DI_INT_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V4DI_INT_V8DI_QI): Ditto.
(V4DI_FTYPE_V8DI_INT_V4DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V2DI_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_INT_V8DI_QI): Ditto.
(V4DI_FTYPE_V4DI_INT_V4DI_QI): Ditto.
(V2DI_FTYPE_V4DI_INT_V2DI_QI): Ditto.
(V2DI_FTYPE_V8DI_INT_V2DI_QI): Ditto.
(HI_FTYPE_HI): Ditto.
(HI_FTYPE_V16QI): Ditto.
(SI_FTYPE_V32QI): Ditto.
(DI_FTYPE_V64QI): Ditto.
(QI_FTYPE_V8HI): Ditto.
(HI_FTYPE_V16HI): Ditto.
(SI_FTYPE_V32HI): Ditto.
(QI_FTYPE_V4SI): Ditto.
(QI_FTYPE_V8SI): Ditto.
(HI_FTYPE_V16SI): Ditto.
(QI_FTYPE_V2DI): Ditto.
(QI_FTYPE_V4DI): Ditto.
(QI_FTYPE_V8DI): Ditto.
(V16QI_FTYPE_HI): Ditto.
(V32QI_FTYPE_SI): Ditto.
(V64QI_FTYPE_DI): Ditto.
(V8HI_FTYPE_QI): Ditto.
(V16HI_FTYPE_HI): Ditto.
(V32HI_FTYPE_SI): Ditto.
(V4SI_FTYPE_QI): Ditto.
(V4SI_FTYPE_HI): Ditto.
(V8SI_FTYPE_QI): Ditto.
(V8SI_FTYPE_HI): Ditto.
(V2DI_FTYPE_QI): Ditto.
(V4DI_FTYPE_QI): Ditto.
(HI_FTYPE_HI_HI): Ditto.
(SI_FTYPE_SI_SI): Ditto.
(DI_FTYPE_DI_DI): Ditto.
(HI_FTYPE_V16QI_V16QI_HI): Ditto.
(HI_FTYPE_V16QI_V16QI_INT_HI): Ditto.
(SI_FTYPE_V32QI_V32QI_SI): Ditto.
(SI_FTYPE_V32QI_V32QI_INT_SI): Ditto.
(DI_FTYPE_V64QI_V64QI_DI): Ditto.
(DI_FTYPE_V64QI_V64QI_INT_DI): Ditto.
(QI_FTYPE_V8HI_V8HI_QI): Ditto.
(QI_FTYPE_V8HI_V8HI_INT_QI): Ditto.
(HI_FTYPE_V16HI_V16HI_HI): Ditto.
(HI_FTYPE_V16HI_V16HI_INT_HI): Ditto.
(SI_FTYPE_V32HI_V32HI_SI): Ditto.
(SI_FTYPE_V32HI_V32HI_INT_SI): Ditto.
(QI_FTYPE_V4SI_V4SI_QI): Ditto.
(QI_FTYPE_V4SI_V4SI_INT_QI): Ditto.
(QI_FTYPE_V8SI_V8SI_QI): Ditto.
(QI_FTYPE_V8SI_V8SI_INT_QI): Ditto.
(QI_FTYPE_V2DI_V2DI_QI): Ditto.
(QI_FTYPE_V2DI_V2DI_INT_QI): Ditto.
(QI_FTYPE_V4DI_V4DI_QI): Ditto.
(QI_FTYPE_V4DI_V4DI_INT_QI): Ditto.
(QI_FTYPE_V8DI_V8DI_QI): Ditto.
(HI_FTYPE_V16SI_V16SI_HI): Ditto.
(QI_FTYPE_V8DI_V8DI_INT): Ditto.
(QI_FTYPE_V8DI_V8DI_INT_QI): Ditto.
(HI_FTYPE_V16SI_V16SI_INT): Ditto.
(HI_FTYPE_V16SI_V16SI_INT _HI): Ditto.
(QI_FTYPE_V8DF_V8DF_INT): Ditto.
(QI_FTYPE_V8DF_V8DF_INT_QI_INT): Ditto.
(HI_FTYPE_V16SF_V16SF_INT): Ditto.
(HI_FTYPE_V16SF_V16SF_INT_HI_INT): Ditto.
(QI_FTYPE_V2DF_V2DF_INT): Ditto.
(QI_FTYPE_V2DF_V2DF_INT_QI): Ditto.
(QI_FTYPE_V2DF_V2DF_INT_QI_INT): Ditto.
(QI_FTYPE_V4SF_V4SF_INT): Ditto.
(QI_FTYPE_V4SF_V4SF_INT_QI): Ditto.
(QI_FTYPE_V4SF_V4SF_INT_QI_INT): Ditto.
(V16SI_FTYPE_HI): Ditto.
(V8DI_FTYPE_QI): Ditto.
(V2DF_FTYPE_V2DI_V2DF_V2DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DI_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V2DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V4SI_V4SF_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SI_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V4SF_INT_V8SF_QI): Ditto.
(V8SI_FTYPE_V8SI_V4SI_INT_V8SI_QI): Ditto.
(V4DI_FTYPE_V4DI_V2DI_INT_V4DI_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_QI): Ditto.
(V2DF_FTYPE_V4SF_V2DF_QI): Ditto.
(V2DF_FTYPE_V4SI_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4SF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4SI_V4DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V8SI_V8DF_QI): Ditto.
(V2DI_FTYPE_V4SI_V2DI_QI): Ditto.
(V2DI_FTYPE_V8HI_V2DI_QI): Ditto.
(V4DI_FTYPE_V4DF_V4DI_QI): Ditto.
(V2DI_FTYPE_V2DF_V2DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_V2DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_QI): Ditto.
(V8DI_FTYPE_V8SI_V8DI_QI): Ditto.
(V8DI_FTYPE_V8HI_V8DI_QI): Ditto.
(V8DI_FTYPE_V16QI_V8DI_QI): Ditto.
(V2DI_FTYPE_V16QI_V2DI_QI): Ditto.
(V4DI_FTYPE_V16QI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4SI_V4DI_QI): Ditto.
(V4DI_FTYPE_V8HI_V4DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DI_V8DF_QI): Ditto.
(V4DF_FTYPE_V4DI_V4DF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DI_V4DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF_QI): Ditto.
(V16QI_FTYPE_V16QI_V16QI_V16QI_HI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI_HI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DF_QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_V32HI_SI): Ditto.
(V64QI_FTYPE_V64QI_V64QI_V64QI_DI): Ditto.
(V32QI_FTYPE_V32QI_V32QI_V32QI_SI): Ditto.
(V8HI_FTYPE_V8HI_V8HI_V8HI_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SI_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SI_V8SF_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_HI): Ditto.
(V4SI_FTYPE_V16QI_V4SI_QI): Ditto.
(V4SI_FTYPE_V8HI_V4SI_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_QI): Ditto.
(V8SI_FTYPE_V8HI_V8SI_QI): Ditto.
(V8SI_FTYPE_V16QI_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_V4SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_INT_V4SI_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SI_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SI_V8SF_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_V8SI_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_INT_V8SI_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_V16SI_V16SF_HI): Ditto.
(V16SF_FTYPE_V8SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V4SF_V16SF_HI): Ditto.
(V8DF_FTYPE_V4DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V2DF_V8DF_QI): Ditto.
(V16SI_FTYPE_V8SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V4SI_V16SI_HI): Ditto.
(V16SI_FTYPE_SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16HI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16QI_V16SI_HI): Ditto.
(V8DI_FTYPE_V4DI_V8DI_QI): Ditto.
(V4SI_FTYPE_V4DF_V4SI_QI): Ditto.
(V8DI_FTYPE_V2DI_V8DI_QI): Ditto.
(V8DI_FTYPE_DI_V8DI_QI): Ditto.
(V16QI_FTYPE_V16SI_V16QI_HI): Ditto.
(V16QI_FTYPE_V8DI_V16QI_QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_SI): Ditto.
(V32HI_FTYPE_V32QI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_HI): Ditto.
(V16HI_FTYPE_V16QI_V16HI_HI): Ditto.
(V8HI_FTYPE_V16QI_V8HI_QI): Ditto.
(V8SF_FTYPE_V4SF_V8SF_QI): Ditto.
(V4DF_FTYPE_V2DF_V4DF_QI): Ditto.
(V8SI_FTYPE_V4SI_V8SI_QI): Ditto.
(V8SI_FTYPE_SI_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_QI): Ditto.
(V4SI_FTYPE_SI_V4SI_QI): Ditto.
(V4DI_FTYPE_V2DI_V4DI_QI): Ditto.
(V4DI_FTYPE_DI_V4DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_QI): Ditto.
(V2DI_FTYPE_DI_V2DI_QI): Ditto.
(V64QI_FTYPE_V64QI_V64QI_DI): Ditto.
(V64QI_FTYPE_V16QI_V64QI_DI): Ditto.
(V64QI_FTYPE_QI_V64QI_DI): Ditto.
(V32QI_FTYPE_V32QI_V32QI_SI): Ditto.
(V32QI_FTYPE_V16QI_V32QI_SI): Ditto.
(V32QI_FTYPE_QI_V32QI_SI): Ditto.
(V16QI_FTYPE_V16QI_V16QI_HI): Ditto.
(V16QI_FTYPE_QI_V16QI_HI): Ditto.
(V32HI_FTYPE_V8HI_V32HI_SI): Ditto.
(V32HI_FTYPE_HI_V32HI_SI): Ditto.
(V16HI_FTYPE_V8HI_V16HI_HI): Ditto.
(V16HI_FTYPE_HI_V16HI_HI): Ditto.
(V8HI_FTYPE_V8HI_V8HI_QI): Ditto.
(V8HI_FTYPE_HI_V8HI_QI): Ditto.
(V64QI_FTYPE_PCV64QI_V64QI_DI): Ditto.
(V32HI_FTYPE_PCV32HI_V32HI_SI): Ditto.
(V32QI_FTYPE_PCV32QI_V32QI_SI): Ditto.
(V16SF_FTYPE_PCV16SF_V16SF_HI): Ditto.
(V8DF_FTYPE_PCV8DF_V8DF_QI): Ditto.
(V16SI_FTYPE_PCV16SI_V16SI_HI): Ditto.
(V16HI_FTYPE_PCV16HI_V16HI_HI): Ditto.
(V16QI_FTYPE_PCV16QI_V16QI_HI): Ditto.
(V8SF_FTYPE_PCV8SF_V8SF_QI): Ditto.
(V8DI_FTYPE_PCV8DI_V8DI_QI): Ditto.
(V8SI_FTYPE_PCV8SI_V8SI_QI): Ditto.
(V8HI_FTYPE_PCV8HI_V8HI_QI): Ditto.
(V4DF_FTYPE_PCV4DF_V4DF_QI): Ditto.
(V4SF_FTYPE_PCV4SF_V4SF_QI): Ditto.
(V4DI_FTYPE_PCV4DI_V4DI_QI): Ditto.
(V4SI_FTYPE_PCV4SI_V4SI_QI): Ditto.
(V2DF_FTYPE_PCV2DF_V2DF_QI): Ditto.
(V2DI_FTYPE_PCV2DI_V2DI_QI): Ditto.
(V16HI_FTYPE_V16SI_V16HI_HI): Ditto.
(V8SI_FTYPE_V8DI_V8SI_QI): Ditto.
(V8HI_FTYPE_V8DI_V8HI_QI): Ditto.
(V16QI_FTYPE_V8HI_V16QI_QI): Ditto.
(V16QI_FTYPE_V16HI_V16QI_HI): Ditto.
(V16QI_FTYPE_V4SI_V16QI_QI): Ditto.
(V16QI_FTYPE_V8SI_V16QI_QI): Ditto.
(V8HI_FTYPE_V4SI_V8HI_QI): Ditto.
(V8HI_FTYPE_V8SI_V8HI_QI): Ditto.
(V16QI_FTYPE_V2DI_V16QI_QI): Ditto.
(V16QI_FTYPE_V4DI_V16QI_QI): Ditto.
(V8HI_FTYPE_V2DI_V8HI_QI): Ditto.
(V8HI_FTYPE_V4DI_V8HI_QI): Ditto.
(V4SI_FTYPE_V2DI_V4SI_QI): Ditto.
(V4SI_FTYPE_V4DI_V4SI_QI): Ditto.
(V32QI_FTYPE_V32HI_V32QI_SI): Ditto.
(V2DF_FTYPE_V2DF_INT_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V4SF_INT_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_INT_V8SF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_INT_V4DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_INT_V8SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI): Ditto.
(VOID_FTYPE_PV8DF_V8DF_QI): Ditto.
(VOID_FTYPE_PV8SI_V8DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V8DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V4DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V2DI_QI): Ditto.
(VOID_FTYPE_PV4SI_V4DI_QI): Ditto.
(VOID_FTYPE_PV4SI_V2DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V8SI_QI): Ditto.
(VOID_FTYPE_PV8HI_V4SI_QI): Ditto.
(VOID_FTYPE_PV4DF_V4DF_QI): Ditto.
(VOID_FTYPE_PV2DF_V2DF_QI): Ditto.
(VOID_FTYPE_PV16SF_V16SF_HI): Ditto.
(VOID_FTYPE_PV8SF_V8SF_QI): Ditto.
(VOID_FTYPE_PV4SF_V4SF_QI): Ditto.
(VOID_FTYPE_PV8DI_V8DI_QI): Ditto.
(VOID_FTYPE_PV4DI_V4DI_QI): Ditto.
(VOID_FTYPE_PV2DI_V2DI_QI): Ditto.
(VOID_FTYPE_PV16SI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16HI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16QI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16QI_V8SI_QI): Ditto.
(VOID_FTYPE_PV16QI_V4SI_QI): Ditto.
(VOID_FTYPE_PV16QI_V8DI_QI): Ditto.
(VOID_FTYPE_PV16QI_V4DI_QI): Ditto.
(VOID_FTYPE_PV16QI_V2DI_QI): Ditto.
(VOID_FTYPE_PV8SI_V8SI_QI): Ditto.
(VOID_FTYPE_PV4SI_V4SI_QI): Ditto.
(VOID_FTYPE_PV32HI_V32HI_SI): Ditto.
(VOID_FTYPE_PV16HI_V16HI_HI): Ditto.
(VOID_FTYPE_PV8HI_V8HI_QI): Ditto.
(VOID_FTYPE_PV64QI_V64QI_DI): Ditto.
(VOID_FTYPE_PV32QI_V32QI_SI): Ditto.
(VOID_FTYPE_PV16QI_V16QI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI_INT_QI): Ditto.
(V8SI_FTYPE_V8SF_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SF_V4SI_QI): Ditto.
(V4DI_FTYPE_V4SF_V4DI_QI): Ditto.
(V2DI_FTYPE_V4SF_V2DI_QI): Ditto.
(V4SF_FTYPE_V4DI_V4SF_QI): Ditto.
(V4SF_FTYPE_V2DI_V4SF_QI): Ditto.
(V4DF_FTYPE_V4DI_V4DF_QI): Ditto.
(V2DF_FTYPE_V2DI_V2DF_QI): Ditto.
(V32HI_FTYPE_V32HI_INT_V32HI_SI): Ditto.
(V32HI_FTYPE_V32HI_V8HI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16HI_INT_V16HI_HI): Ditto.
(V16HI_FTYPE_V16HI_V8HI_V16HI_HI): Ditto.
(V8HI_FTYPE_V8HI_INT_V8HI_QI): Ditto.
(V32HI_FTYPE_V64QI_V64QI_INT_V32HI_SI): Ditto.
(V16HI_FTYPE_V32QI_V32QI_INT_V16HI_HI): Ditto.
(V8HI_FTYPE_V16QI_V16QI_INT_V8HI_QI): Ditto.
(V64QI_FTYPE_V32HI_V32HI_V64QI_DI): Ditto.
(V32QI_FTYPE_V16HI_V16HI_V32QI_SI): Ditto.
(V16QI_FTYPE_V8HI_V8HI_V16QI_HI): Ditto.
(V32HI_FTYPE_V16SI_V16SI_V32HI_SI): Ditto.
(V16HI_FTYPE_V8SI_V8SI_V16HI_HI): Ditto.
(V8HI_FTYPE_V4SI_V4SI_V8HI_QI): Ditto.
(V8DI_FTYPE_V16SI_V16SI_V8DI_QI): Ditto.
(V4DI_FTYPE_V8SI_V8SI_V4DI_QI): Ditto.
(V2DI_FTYPE_V4SI_V4SI_V2DI_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI_INT_HI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_V8SI_INT_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_V4DI_INT_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_V4SI_INT_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_V2DI_INT_QI): Ditto.
(V8SI_FTYPE_V8SI_V4SI_V8SI_QI): Ditto.
(V4DI_FTYPE_V4DI_V2DI_V4DI_QI): Ditto.
(QI_FTYPE_V4DF_V4DF_INT_QI): Ditto.
(QI_FTYPE_V8SF_V8SF_INT_QI): Ditto.
(QI_FTYPE_V8DF_INT_QI): Ditto.
(QI_FTYPE_V4DF_INT_QI): Ditto.
(QI_FTYPE_V2DF_INT_QI): Ditto.
(HI_FTYPE_V16SF_INT_HI): Ditto.
(QI_FTYPE_V8SF_INT_QI): Ditto.
(QI_FTYPE_V4SF_INT_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF_QI_INT): Ditto.

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

8 years ago2015-07-31 Richard Biener <rguenther@suse.de>
rguenth [Fri, 31 Jul 2015 07:29:55 +0000 (07:29 +0000)]
2015-07-31  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (fold_gimple_assign): Remove folding of
GIMPLE_BINARY_RHS.

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

8 years ago* go-lang.c (go_langhook_init_options_struct): Don't set
schwab [Fri, 31 Jul 2015 07:08:20 +0000 (07:08 +0000)]
* go-lang.c (go_langhook_init_options_struct): Don't set
x_flag_split_stack.
(go_langhook_post_options): Set it here instead.

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

8 years agoDon't cancel loop tree in parloops
vries [Fri, 31 Jul 2015 06:26:44 +0000 (06:26 +0000)]
Don't cancel loop tree in parloops

2015-07-31  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/66846
* omp-low.c (expand_omp_taskreg) [ENABLE_CHECKING]: Call
verify_loop_structure for child_cfun if !LOOPS_NEED_FIXUP.
(expand_omp_target) [ENABLE_CHECKING]: Same.
(execute_expand_omp) [ENABLE_CHECKING]: Call verify_loop_structure for
cfun if !LOOPS_NEED_FIXUP.
(expand_omp_for_static_nochunk): Handle simple latch bb.  Handle case
that omp_for already has its own loop struct.
* tree-parloops.c (create_phi_for_local_result)
(create_call_for_reduction): Handle simple latch bb.
(create_parallel_loop): Add simple latch bb to preserve
LOOPS_HAVE_SIMPLE_LATCHES.  Record new exit.  Handle simple latch bb.
(gen_parallel_loop): Remove call to cancel_loop_tree.
(parallelize_loops): Skip loops that are inner loops of parallelized
loops.
(pass_parallelize_loops::execute) [ENABLE_CHECKING]: Call
verify_loop_structure.

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

8 years ago * sv.po: Update.
jsm28 [Fri, 31 Jul 2015 00:49:18 +0000 (00:49 +0000)]
* sv.po: Update.

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

8 years ago * sv.po: Update.
jsm28 [Fri, 31 Jul 2015 00:48:04 +0000 (00:48 +0000)]
* sv.po: Update.

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

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

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

8 years ago[V850] Hookize LIBCALL_VALUE
aesok [Thu, 30 Jul 2015 21:36:18 +0000 (21:36 +0000)]
[V850] Hookize LIBCALL_VALUE

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

8 years agoUse lowpart_subreg instead of simplify_gen_subreg
aesok [Thu, 30 Jul 2015 21:25:29 +0000 (21:25 +0000)]
Use lowpart_subreg instead of simplify_gen_subreg

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

8 years ago * c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
jason [Thu, 30 Jul 2015 19:16:23 +0000 (19:16 +0000)]
* c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
'*' for reference decay.

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

8 years ago * gcc.target/i386/pr66648.c: Move to correct place.
uros [Thu, 30 Jul 2015 16:13:02 +0000 (16:13 +0000)]
* gcc.target/i386/pr66648.c: Move to correct place.

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

8 years ago[AArch64] Removed unused VRL2/3/4 iterator values
alalaw01 [Thu, 30 Jul 2015 16:04:08 +0000 (16:04 +0000)]
[AArch64] Removed unused VRL2/3/4 iterator values

* config/aarch64/iterators.md (VRL2, VRL3, VRL4): Remove values for
128-bit vector modes.

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

8 years agogcc/
rsandifo [Thu, 30 Jul 2015 13:22:56 +0000 (13:22 +0000)]
gcc/
* builtins.c (HAVE_atomic_clear, gen_atomic_clear): Delete.
(expand_builtin_atomic_clear): Remove support for atomic_clear
pattern.

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

8 years ago2015-07-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Jul 2015 13:11:41 +0000 (13:11 +0000)]
2015-07-30  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (fold_gimple_assign): Only fold !tcc_comparison
binaries.  Move X == 0, X == 1, X != 0, and X != 1 canonicalization ...
(fold_stmt_1): ... here and work on GIMPLE directly.  Remove
redundant operand canonicalization.

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

8 years agogcc/
rsandifo [Thu, 30 Jul 2015 13:06:25 +0000 (13:06 +0000)]
gcc/
2015-07-30  David Sherwood  <david.sherwood@arm.com>

* config/aarch64/aarch64-simd.md (aarch64_ext<mode>): Replace call to
GET_MODE_SIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_SIZE (m).
* config/aarch64/aarch64.c (aarch64_simd_valid_immediate): Likewise.
* config/arm/arm.c (neon_valid_immediate): Likewise.
* config/i386/i386.c (classify_argument, ix86_expand_int_vcond)
(expand_vec_perm_blend, expand_vec_perm_pshufb): Likewise.
(expand_vec_perm_pshufb2, expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq_even_odd): Likewise.
(expand_vec_perm_vpshufb4_vpermq2): Likewise.
* config/i386/sse.md
(<extract_type>_vinsert<shuffletype><extract_suf>_mask): Likewise.
(*ssse3_palignr<mode>_perm): Likewise.
* config/rs6000/rs6000.c (rs6000_complex_function_value): Likewise.
* config/spu/spu.c (arith_immediate_p): Likewise.
* simplify-rtx.c (simplify_const_unary_operation): Likewise.
(simplify_binary_operation_1, simplify_ternary_operation): Likewise.

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

8 years ago * testsuite/experimental/filesystem/operations/current_path.cc: Use
redi [Thu, 30 Jul 2015 12:41:33 +0000 (12:41 +0000)]
* testsuite/experimental/filesystem/operations/current_path.cc: Use
canonical paths for comparisons.

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

8 years ago2015-07-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Jul 2015 11:20:21 +0000 (11:20 +0000)]
2015-07-30  Richard Biener  <rguenther@suse.de>

* genmatch.c (decision_tree::gen_gimple): Merge with ...
(decision_tree::gen_generic): ... this into ...
(decision_tree::gen): ... this.
(main): Adjust callers.

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

8 years ago * include/bits/regex_automaton.h (_State_base, _State<>):
timshen [Thu, 30 Jul 2015 10:35:45 +0000 (10:35 +0000)]
* include/bits/regex_automaton.h (_State_base, _State<>):
Remove _TraitsT dependency from _State<>; Make matcher member
into the union to reduce struct size.
* include/bits/regex_automaton.tcc (_State_base<>::_M_print,
_State_base<>::_M_dot, _StateSeq<>::_M_clone):
Adjust to fit the interface. Factor out common parts in
_M_clone as _State<>::_M_has_alt.
* include/bits/regex_executor.h (_Executer<>::_M_lookahead):
Only pass state id instead of the whole state.
* include/bits/regex_executor.tcc (_Executer<>::_M_dfs,
_Executer<>::_M_lookahead): Adjust to fit the interface.
* include/std/regex: Include <ext/aligned_buffer.h>

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

8 years ago2015-07-30 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 30 Jul 2015 10:24:46 +0000 (10:24 +0000)]
2015-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

* class.c (check_for_override): Use DECL_SOURCE_LOCATION and "%qD"
in warning_at instead of "%q+D" in warning.
(warn_hidden): Likewise but use location_of.
(finish_struct_anon_r): Likewise use DECL_SOURCE_LOCATION in permerror.
(check_bitfield_decl, check_field_decls): Likewise in warning_at.
(check_field_decls): Likewise for permerror.
(explain_non_literal_class): Likewise for inform.
(check_bases_and_members, layout_class_type): Likewise for warning_at.
(note_name_declared_in_class): Use location_of in permerror.
* name-lookup.c (diagnose_name_conflict): Use location_of in inform.
(pushdecl_maybe_friend_1): Use DECL_SOURCE_LOCATION in pedwarn,
inform, and warning_at.
(check_for_out_of_scope_variable): Likewise for warning_at and
permerror.

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

8 years ago * include/experimental/any (any::operator=(const any&)): Check for
redi [Thu, 30 Jul 2015 10:00:39 +0000 (10:00 +0000)]
* include/experimental/any (any::operator=(const any&)): Check for
self-assignment.
* testsuite/experimental/any/assign/self.cc: New.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

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

8 years ago * c-common.c (warn_tautological_cmp): Bail for float types.
mpolacek [Thu, 30 Jul 2015 08:31:59 +0000 (08:31 +0000)]
* c-common.c (warn_tautological_cmp): Bail for float types.

* c-c++-common/Wtautological-compare-3.c: New test.

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

8 years ago2015-07-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Jul 2015 07:56:23 +0000 (07:56 +0000)]
2015-07-30  Richard Biener  <rguenther@suse.de>

* genmatch.c (verbose): New global.
(warning_at): Add overload with source_location.
(capture_info::capture_info): Add bool whether generating gimple
or generic.  Add gimple member.
(capture_info::cinfo): Add capture member.
(capture_info::walk_match): Record capture.  Warn on
non-captured leafs.
(capture_info::walk_c_expr): Add more fragments captures cannot
escape through.  Warn on escaped captures.
(dt_simplify::gen_1): Warn on operands we force to have no
side-effects.
(main): Initialize verbose.
* match.pd: Add integer_nonzerop and HONOR_NANS predicates.

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

8 years ago2015-07-30 Richard Biener <rguenther@suse.de>
rguenth [Thu, 30 Jul 2015 07:09:20 +0000 (07:09 +0000)]
2015-07-30  Richard Biener  <rguenther@suse.de>

PR middle-end/67053
* match.pd: Allow both operands to independently have conversion
when simplifying compares of addresses.

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

8 years ago DR 1558
jason [Thu, 30 Jul 2015 05:27:34 +0000 (05:27 +0000)]
DR 1558
PR c++/67021
* pt.c (tsubst_decl) [TYPE_DECL]: Clear TYPE_DEPENDENT_P_VALID.

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

8 years ago PR target/66217
segher [Thu, 30 Jul 2015 02:34:09 +0000 (02:34 +0000)]
PR target/66217
PR target/67045
* config/rs6000/rs6000.md (and<mode>3): Put a CONST_INT_P check
around those cases that need one.

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

8 years agoDaily bump.
gccadmin [Thu, 30 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago syscall: Fix to libgo/mksysinfo.sh
ian [Wed, 29 Jul 2015 21:42:30 +0000 (21:42 +0000)]
syscall:  Fix to libgo/mksysinfo.sh

    In a recent change to mksysinfo.sh, a space was missing on
    some lines which caused the libgo build to hang on some
    systems.  This corrects that problem.

    Fixes golang/go#11924

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

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

8 years ago[graphite] reduce the number of params in a scop to 3
spop [Wed, 29 Jul 2015 21:28:27 +0000 (21:28 +0000)]
[graphite] reduce the number of params in a scop to 3

* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Default to 3.

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

8 years agoDefine DBX_REGISTER_NUMBER for IA MCU
hjl [Wed, 29 Jul 2015 21:06:23 +0000 (21:06 +0000)]
Define DBX_REGISTER_NUMBER for IA MCU

Since IA MCU uses the same debug register map as Linux/x86, we copy
DBX_REGISTER_NUMBER together with TARGET_ASM_FILE_START_FILE_DIRECTIVE
and ASM_COMMENT_START from i386/gnu-user.h to i386/iamcu.h.

* config/i386/iamcu.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE):
New.  Copied from config/i386/gnu-user.h.
(ASM_COMMENT_START): Likewise.
(DBX_REGISTER_NUMBER): Likewise.

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

8 years agoFix whitespace in my MAINTAINERS change commit.
ville [Wed, 29 Jul 2015 19:17:47 +0000 (19:17 +0000)]
Fix whitespace in my MAINTAINERS change commit.

* MAINTAINERS (Write After Approval): Add a blank line.

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

8 years ago* MAINTAINERS (Write After Approval): Add myself.
ville [Wed, 29 Jul 2015 17:20:23 +0000 (17:20 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

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

8 years ago PR libgfortran/66650
uros [Wed, 29 Jul 2015 15:42:03 +0000 (15:42 +0000)]
PR libgfortran/66650
* libgfortran.h (GFC_DTYPE_SIZE_MASK): Rewrite to avoid
"left shift of negative value" warning.

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

8 years ago PR libstdc++/66829
redi [Wed, 29 Jul 2015 14:56:11 +0000 (14:56 +0000)]
PR libstdc++/66829
* testsuite/lib/libstdc++.exp (v3-build_support): Compile
testsuite_shared.cc with -std=gnu++98.

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

8 years ago[AArch64 Testsuite] vld1_lane.c: Remove unused test data
alalaw01 [Wed, 29 Jul 2015 14:27:21 +0000 (14:27 +0000)]
[AArch64 Testsuite] vld1_lane.c: Remove unused test data

(taken from [AArch64] Add support for float14x{4,8}_t vectors/builtins)

        * gcc.target/aarch64/vld1_lane.c (main): Remove unused test data.
        (CHECK): Pass address of scalar, rather than array.

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

8 years ago[AArch64 Testsuite] vld1-vst1_1.c: Add missing float32x4_t case
alalaw01 [Wed, 29 Jul 2015 14:21:19 +0000 (14:21 +0000)]
[AArch64 Testsuite] vld1-vst1_1.c: Add missing float32x4_t case

(taken from [AArch64] Add support for float14x{4,8}_t vectors/builtins)

        * gcc.target/aarch64/vld1-vst1_1.c: Add missing float32x4_t case.

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

8 years ago2015-07-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 Jul 2015 14:17:49 +0000 (14:17 +0000)]
2015-07-29  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (fold_gimple_cond): Remove.
(fold_stmt_1): Do not call it.

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

8 years ago[ARM/AArch64 Testsuite] Add basic fp16 tests
alalaw01 [Wed, 29 Jul 2015 13:28:54 +0000 (13:28 +0000)]
[ARM/AArch64 Testsuite] Add basic fp16 tests

* gcc.target/aarch64/fp16/fp16.exp: New.
* gcc.target/aarch64/fp16/f16_convs_1.c: New.
* gcc.target/aarch64/fp16/f16_convs_2.c: New.

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

8 years ago * testsuite/24_iterators/container_access.cc: New.
redi [Wed, 29 Jul 2015 12:55:58 +0000 (12:55 +0000)]
* testsuite/24_iterators/container_access.cc: New.

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

8 years ago2015-07-29 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Wed, 29 Jul 2015 12:41:32 +0000 (12:41 +0000)]
2015-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>

* include/bits/range_access.h: Change class to typename in every
template.
(size, empty, data): New functions from N4280.
* testsuite/24_iterators/container_access.cc: New.

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

8 years ago2015-07-29 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Wed, 29 Jul 2015 12:41:23 +0000 (12:41 +0000)]
2015-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>

PR libstdc++/60970
* include/bits/functional_hash.h (__hash_enum): New.
(hash): Derive from __hash_enum.
* testsuite/20_util/hash/60970.cc: New.

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

8 years ago[AArch64] Add basic FP16 support
alalaw01 [Wed, 29 Jul 2015 12:27:05 +0000 (12:27 +0000)]
[AArch64] Add basic FP16 support

gcc/:

* config/aarch64/aarch64-builtins.c (aarch64_fp16_type_node): New.
(aarch64_init_builtins): Make aarch64_fp16_type_node, use for __fp16.

* config/aarch64/aarch64-modes.def: Add HFmode.

* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define
__ARM_FP16_FORMAT_IEEE and __ARM_FP16_ARGS. Set bit 1 of __ARM_FP.

* config/aarch64/aarch64.c (aarch64_init_libfuncs,
aarch64_promoted_type): New.

(aarch64_float_const_representable_p): Disable HFmode.
(aarch64_mangle_type): Mangle half-precision floats to "Dh".
(TARGET_PROMOTED_TYPE): Define to aarch64_promoted_type.
(TARGET_INIT_LIBFUNCS): Define to aarch64_init_libfuncs.

* config/aarch64/aarch64.md (mov<mode>): Include HFmode using GPF_F16.
(movhf_aarch64, extendhfsf2, extendhfdf2, truncsfhf2, truncdfhf2): New.

* config/aarch64/iterators.md (GPF_F16): New.

gcc/testsuite/:

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

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

8 years ago2015-07-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 Jul 2015 12:14:08 +0000 (12:14 +0000)]
2015-07-29  Richard Biener  <rguenther@suse.de>

* match.pd: Merge address comparison patterns and make them
handle some more cases.

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

8 years ago2015-07-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 Jul 2015 12:06:14 +0000 (12:06 +0000)]
2015-07-29  Richard Biener  <rguenther@suse.de>

* genmatch.c (c_expr::gen_transform): Error on unknown captures.
(parser::parse_capture): Add bool argument on whether to reject
unknown captures.
(parser::parse_expr): Adjust.
(parser::parse_op): Likewise.
(parser::parse_pattern): Likewise.

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

8 years ago2015-07-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 Jul 2015 07:48:10 +0000 (07:48 +0000)]
2015-07-29  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (has_use_on_stmt): New function.
(replace_stmt_with_simplification): Use it to allow
abnormals originally referenced in the stmt.
(fold_stmt_1): Canonicalize operand order.

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

8 years agoUse fast unwinder for PowerPC
trippels [Wed, 29 Jul 2015 06:32:09 +0000 (06:32 +0000)]
Use fast unwinder for PowerPC

2015-07-29  Markus Trippelsdorf  <markus@trippelsdorf.de>

PR sanitizer/63927
* sanitizer_common/sanitizer_stacktrace.h: Use fast unwinder
for PowerPC.

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

8 years ago PR libstdc++/67015
timshen [Wed, 29 Jul 2015 03:45:35 +0000 (03:45 +0000)]
PR libstdc++/67015
* include/bits/regex_compiler.h (_Compiler<>::_M_expression_term,
_BracketMatcher<>::_M_add_collating_element): Change signature
to make checking the and of bracket expression easier.
* include/bits/regex_compiler.tcc (_Compiler<>::_M_expression_term):
Treat '-' as a valid literal if it's at the end of bracket expression.
* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
New testcases.

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