platform/upstream/linaro-gcc.git
9 years agoNew jit API entrypoint: gcc_jit_context_compile_to_file
dmalcolm [Tue, 20 Jan 2015 01:32:48 +0000 (01:32 +0000)]
New jit API entrypoint: gcc_jit_context_compile_to_file

gcc/jit/ChangeLog:
* docs/cp/topics/results.rst: Rename to...
* docs/cp/topics/compilation.rst: ...this, and add section on
ahead-of-time compilation.
* docs/cp/topics/index.rst: Update for renaming of results.rst
to compilation.rst.
* docs/examples/emit-alphabet.bf: New file, a sample "brainf"
script.
* docs/examples/tut05-bf.c: New file, implementing a compiler
for "brainf".
* docs/internals/test-hello-world.exe.log.txt: Update to reflect
changes to logger output.
* docs/intro/index.rst: Add tutorial05.rst
* docs/intro/tutorial05.rst: New file.
* docs/topics/results.rst: Rename to...
* docs/topics/compilation.rst: ...this, and add section on
ahead-of-time compilation.
* docs/topics/index.rst: Update for renaming of results.rst to
compilation.rst.
* jit-playback.c (gcc::jit::playback::context::compile): Convert
return type from result * to void.  Move the code to convert to
dso and dlopen the result to a new pure virtual "postprocess"
method.
(gcc::jit::playback::compile_to_memory::compile_to_memory): New
function.
(gcc::jit::playback::compile_to_memory::postprocess): New
function, based on playback::context::compile.
(gcc::jit::playback::compile_to_file::compile_to_file): New
function.
(gcc::jit::playback::compile_to_file::postprocess): New function.
(gcc::jit::playback::compile_to_file::copy_file): New function.
(gcc::jit::playback::context::convert_to_dso): Move internals
to...
(gcc::jit::playback::context::invoke_driver): New method.  Add
"-shared" and "-c" options to driver's argv as needed.
* jit-playback.h: Include "timevar.h".
(gcc::jit::playback::context::compile): Convert return type from
result * to void.
(gcc::jit::playback::context::postprocess): New pure virtual
function, making this an abstract base class.
(gcc::jit::playback::context::get_tempdir): New accessor.
(gcc::jit::playback::context::invoke_driver): New function.
(class gcc::jit::playback::compile_to_memory): New subclass of
playback::context.
(class gcc::jit::playback::compile_to_file): Likewise.
* jit-recording.c (gcc::jit::recording::context::compile): Use a
playback::compile_to_memory, and extract its result.
(gcc::jit::recording::context::compile_to_file): New function.
* jit-recording.h (gcc::jit::recording::context::compile_to_file):
New function.
* libgccjit++.h (gccjit::context::compile_to_file): New method.
* libgccjit.c (gcc_jit_context_compile): Update log message to
clarify that this is an in-memory compile.
(gcc_jit_context_compile_to_file): New function.
* libgccjit.h (gcc_jit_context): Clarify that you can compile
a context more than once, and that you can compile to a file
as well as to memory.
(gcc_jit_result): Clarify that this is the result of an
in-memory compilation.
(gcc_jit_context_compile): Clarify that you can compile, and that
this is an in-memory compilation.
(enum gcc_jit_output_kind): New enum.
(gcc_jit_context_compile_to_file): New function.
(gcc_jit_context_enable_dump): Clarify comment to cover both forms
of compilation.
* libgccjit.map (gcc_jit_context_compile_to_file): New API
entrypoint.
* notes.txt: Update to show the playback::context::postprocess
virtual function.

gcc/testsuite/ChangeLog:
* jit.dg/harness.h: Include <unistd.h>.
(CHECK_NO_ERRORS): New.
(verify_code): Wrap prototype in #ifndef TEST_COMPILING_TO_FILE.
(test_jit): Support new macro TEST_COMPILING_TO_FILE for exercising
gcc_jit_context_compile_to_file.
* jit.dg/jit.exp (fixed_host_execute): Fix the code for passing on
args to the spawned executable.
(jit-expand-vars): New function.
(jit-exe-params): New variable.
(dg-jit-set-exe-params): New function.
(jit-dg-test): Detect testcases that use
jit-verify-compile-to-file and call jit-setup-compile-to-file.
Set arguments of spawned process to jit-exe-params.
(jit-get-output-filename): New function.
(jit-setup-compile-to-file): New function.
(jit-verify-compile-to-file): New function.
(jit-run-executable): New function.
(jit-verify-executable): New function.
* jit.dg/test-compile-to-assembler.c: New testcase.
* jit.dg/test-compile-to-dynamic-library.c: New testcase.
* jit.dg/test-compile-to-executable.c: New testcase.
* jit.dg/test-compile-to-object.c: New testcase.

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

9 years agoDaily bump.
gccadmin [Tue, 20 Jan 2015 00:16:59 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago PR lto/45375
hubicka [Mon, 19 Jan 2015 23:58:19 +0000 (23:58 +0000)]
PR lto/45375
* i386.c (gate): Check flag_expensive_optimizations and
optimize_size.
(ix86_option_override_internal): Drop optimize_size condition
on MASK_ACCUMULATE_OUTGOING_ARGS, MASK_VZEROUPPER,
MASK_AVX256_SPLIT_UNALIGNED_LOAD, MASK_AVX256_SPLIT_UNALIGNED_STORE,
MASK_PREFER_AVX128.
(ix86_avx256_split_vector_move_misalign,
ix86_avx256_split_vector_move_misalign): Check optimize_insn_for_speed.
* sse.md (all uses of TARGET_PREFER_AVX128): Add
optimize_insn_for_speed_p check.

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

9 years agogcc/testsuite/
olegendo [Mon, 19 Jan 2015 23:25:03 +0000 (23:25 +0000)]
gcc/testsuite/
PR target/64652
* gcc.target/sh/torture/pr64652.c (test): Rename to test_0.
(test_1): New.

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

9 years agoMIPS: Only pass floating-point options to the assembler when necessary
mpf [Mon, 19 Jan 2015 23:05:41 +0000 (23:05 +0000)]
MIPS: Only pass floating-point options to the assembler when necessary

gcc/
* config/mips/mips.h (FP_ASM_SPEC): New define.
(ASM_SPEC): Remove floating-point options and use FP_ASM_SPEC
instead.

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

9 years ago PR libstdc++/64649
timshen [Mon, 19 Jan 2015 23:00:13 +0000 (23:00 +0000)]
PR libstdc++/64649
* include/bits/regex.tcc (regex_traits<>::lookup_collatename,
regex_traits<>::lookup_classname): Support forward iterators.
* testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
* testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.

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

9 years ago PR libstdc++/64584
timshen [Mon, 19 Jan 2015 22:56:04 +0000 (22:56 +0000)]
PR libstdc++/64584
PR libstdc++/64585
* include/bits/regex.h (basic_regex<>::basic_regex,
basic_regex<>::assign, basic_regex<>::imbue,
basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
imbuing basic_regex; Make assign() transactional against exception.
* include/bits/regex_compiler.h (__compile_nfa<>): Add back
__compile_nfa SFINAE.
* include/std/regex: Adjust include order to avoid __compile_nfa
forward declaration.
* testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
* testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.

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

9 years agogcc/
olegendo [Mon, 19 Jan 2015 22:35:53 +0000 (22:35 +0000)]
gcc/
PR target/53988
* config/sh/sh-protos.h (sh_find_set_of_reg): Make sure not to return
nullptr for insn when reaching the first insn.
* config/sh/sh.c (sh_unspec_insn_p): Rewrite using subrtx_iterator.
(sh_insn_operands_modified_between_p): Add nullptr check.
(sh_find_extending_set_of_reg): Fix log message.  Don't accept
sign extending mem load if the insn contains any UNSPEC or
UNSPEC_VOLATILE.

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

9 years ago * params.def (inline-unit-growth): Drop to 15%.
hubicka [Mon, 19 Jan 2015 22:11:03 +0000 (22:11 +0000)]
* params.def (inline-unit-growth): Drop to 15%.
* invoke.texi (inline-unit-growth): Document change.

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

9 years agoAdd attribute unused to dummy arguments in ffi stub
rth [Mon, 19 Jan 2015 22:10:59 +0000 (22:10 +0000)]
Add attribute unused to dummy arguments in ffi stub

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

9 years agoFix PR64668.
marxin [Mon, 19 Jan 2015 22:02:04 +0000 (22:02 +0000)]
Fix PR64668.

* objc/compile/pr64668.m: New test.
PR ipa/64668
* ipa-icf-gimple.c (func_checker::compare_operand): Call proper
function for second argument of OBJ_TYPE_REF.

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

9 years agoMerge with upstream libffi 3ac1610aa33c887ea9b14935208943925714a33e
rth [Mon, 19 Jan 2015 21:14:59 +0000 (21:14 +0000)]
Merge ... upstream libffi 3ac1610aa33c887ea9b14935208943925714a33e

Includes build fixes for Solaris and Cygwin.

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

9 years ago PR ipa/64218
hubicka [Mon, 19 Jan 2015 20:46:15 +0000 (20:46 +0000)]
PR ipa/64218
* ipa-inline.c (want_inline_function_to_all_callers_p): Fix check
whether function is an alias.

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

9 years ago * ipa-devirt.c (ipa_devirt): Drop polymorphic call info in hopeless
hubicka [Mon, 19 Jan 2015 20:35:55 +0000 (20:35 +0000)]
* ipa-devirt.c (ipa_devirt): Drop polymorphic call info in hopeless
cases.

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

9 years ago2015-01-19 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 19 Jan 2015 20:13:35 +0000 (20:13 +0000)]
2015-01-19  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/64671
* lra-remat.c (operand_to_remat): Don't consider jump and call
insns.

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

9 years agoFix int vs bool issue in jit.dg/test-arith-overflow.c
dmalcolm [Mon, 19 Jan 2015 19:15:10 +0000 (19:15 +0000)]
Fix int vs bool issue in jit.dg/test-arith-overflow.c

gcc/testsuite/ChangeLog:
* jit.dg/test-arith-overflow.c: Include stdbool.h.
(create_overflow_fn): Update comment to clarify that
the third param of the created function is a bool *, not
an int *.
(verify_int_overflow_fn): Convert param "expected_ovf" from
int to bool.  Update third param of "overflow_fn_type" from int *
to bool *.  Update local "actual_ovf" from int to bool.
(verify_uint_overflow_fn): Likewise.

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

9 years ago2015-01-19 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Mon, 19 Jan 2015 19:00:18 +0000 (19:00 +0000)]
2015-01-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR ada/64640
        * adaint.c: Handle __CYGWIN__ like __MINGW32__ here.
        * mingw32.h: Don't include <tchar.h> under cygwin.
        (_O_U8TEXT, _O_U16TEXT, _O_WTEXT): Set to _O_TEXT if not yet defined.

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

9 years ago * config/rs6000/default64.h: Include rs6000-cpus.def.
dje [Mon, 19 Jan 2015 18:33:24 +0000 (18:33 +0000)]
    * config/rs6000/default64.h: Include rs6000-cpus.def.
        (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use ISA 2.7 (POWER8).
        (TARGET_DEFAULT) [BIG_ENDIAN]: Use POWER4.
        * config/rs6000/driver-rs6000.c (detect_processor_aix): Add POWER7
        and POWER8.
        * config/rs6000/linux64.h (PROCESSOR_DEFAULT64): Always default to
        POWER8.
        * config/rs6000/rs6000.c (rs6000_file_start): Emit .machine
        pseudo-op to specify assembler dialect.

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

9 years agoFix PR64664.
marxin [Mon, 19 Jan 2015 18:07:08 +0000 (18:07 +0000)]
Fix PR64664.

        PR ipa/64664
* ipa-icf.c (sem_item_optimizer::filter_removed_items):
Handle safe potentially removed nodes during filtering.

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

9 years agoPR libffi/64607
rth [Mon, 19 Jan 2015 17:58:06 +0000 (17:58 +0000)]
PR libffi/64607

 * testsuite/lib/libffi.exp (libffi-init): Append -L for the
 just built libstdc++.

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

9 years agojit: fix crash in memento_of_new_string_literal::make_debug_string
dmalcolm [Mon, 19 Jan 2015 17:16:37 +0000 (17:16 +0000)]
jit: fix crash in memento_of_new_string_literal::make_debug_string

gcc/jit/ChangeLog:
* jit-recording.c
(gcc::jit::recording::memento_of_new_string_literal::make_debug_string):
Add missing format string.

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

9 years agostrerror.c: Do not declare sys_nerr or sys_errlist if already macros
brobecke [Mon, 19 Jan 2015 15:28:56 +0000 (15:28 +0000)]
strerror.c: Do not declare sys_nerr or sys_errlist if already macros

This fixes a MinGW warning in libiberty/strerror.c

2015-01-19  Eli Zaretskii  <eliz@gnu.org>

        * strerror.c <sys_nerr, sys_errlist>: Declare only if they aren't
        macros.

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

9 years agoIPA ICF: add no_icf attribute.
marxin [Mon, 19 Jan 2015 15:20:16 +0000 (15:20 +0000)]
IPA ICF: add no_icf attribute.

* c-common.c (handle_noicf_attribute): New function.
* doc/extend.texi (no_icf): Add new attribute description.
* ipa-icf.c (sem_item_optimizer::merge_classes): Handle cases
where the pass attempts to merge a function with no_icf attribute.
* gcc.dg/ipa/ipa-icf-33.c: New test.

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

9 years agoImprove documentation of register constraints.
ramana [Mon, 19 Jan 2015 14:55:28 +0000 (14:55 +0000)]
Improve documentation of register constraints.

While looking at PR target/64532- I realized we haven't documented all
the register constraints. I'm not documenting the other immediate
constraints as it is not clear to me how much of that is actually
useful yet and I don't have the time this afternoon to clean this up.

Built documentation and looked at it.

Applied.

Ramana

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

9 years ago2015-01-19 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Mon, 19 Jan 2015 14:37:03 +0000 (14:37 +0000)]
2015-01-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
    Jonathan Wakely  <jwakely@redhat.com>

* include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
on overloads for arrays.
(cbegin, cend, rbegin, rend, crbegin, crend): New.
* testsuite/24_iterators/range_access_cpp14.cc: New.

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

9 years ago * gcc.target/aarch64/advsimd-intrinsics/compute-ref-data.h
fyang [Mon, 19 Jan 2015 14:21:45 +0000 (14:21 +0000)]
   * gcc.target/aarch64/advsimd-intrinsics/compute-ref-data.h
       (buffer_float64x2, buffer_pad_float64x2): New helper variables.
       * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (hfloat64_t,
       result_float64x2, expected_hfloat64x2): New helper type, variable and
       declaration.
       (buffer_float64x2, buffer_pad_float64x2): New helper variables.
       * gcc.target/aarch64/advsimd-intrinsics/vfma.c: Don't run on target
       without the FMA feature and exclude test for vfmaq_f64 on arm*-*-*.
       * gcc.target/aarch64/advsimd-intrinsics/vfms.c: Don't run on target
       without the FMA feature and exclude test for vfmsq_f64 on arm*-*-*.
       * gcc.target/aarch64/advsimd-intrinsics/vfma_n.c: Don't run on arm*-*-*
       and target without the FMA feature.

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

9 years ago[AArch64] Remove ashift pattern for QI/HI
jiwang [Mon, 19 Jan 2015 14:13:33 +0000 (14:13 +0000)]
[AArch64] Remove ashift pattern for QI/HI

2015-01-19  Jiong Wang  <jiong.wang@arm.com>
    Andrew Pinski  <apinski@cavium.com>

  gcc/
    PR target/64304
    * config/aarch64/aarch64.md (define_insn "*ashl<mode>3_insn"): Deleted.
    (ashl<mode>3): Don't expand if operands[2] is not constant.

  gcc/testsuite/
    * gcc.target/aarch64/pr64304.c: New testcase.

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

9 years ago[AArch64] PR 64448: Combine ((x ^ y) & m) ^ x into bsl/bif instruction
ktkachov [Mon, 19 Jan 2015 14:03:23 +0000 (14:03 +0000)]
[AArch64] PR 64448: Combine ((x ^ y) & m) ^ x into bsl/bif instruction

PR target/64448
* config/aarch64/aarch64-simd.md (aarch64_simd_bsl<mode>_internal):
Match xor-and-xor RTL pattern.

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

9 years agogcc/
ienkovich [Mon, 19 Jan 2015 13:58:54 +0000 (13:58 +0000)]
gcc/

PR rtl-optimization/64081
* loop-iv.c (def_pred_latch_p): New function.
(latch_dominating_def): Allow specific cases with non-single
definitions.
(iv_get_reaching_def): Likewise.
(check_complex_exit_p): New function.
(check_simple_exit): Use check_complex_exit_p to allow certain cases
with exits not executing on any iteration.

gcc/testsuite/

PR rtl-optimization/64081
* gcc.dg/pr64081.c: New test.

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

9 years ago * common.opt (fgraphite): Fix a typo.
jakub [Mon, 19 Jan 2015 13:41:44 +0000 (13:41 +0000)]
* common.opt (fgraphite): Fix a typo.

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

9 years ago * config/aarch64/aarch64-simd.md (aarch64_<maxmin_uns>p<mode>): New
fyang [Mon, 19 Jan 2015 13:22:41 +0000 (13:22 +0000)]
    * config/aarch64/aarch64-simd.md (aarch64_<maxmin_uns>p<mode>): New
        pattern.
        * config/aarch64/aarch64-simd-builtins.def (smaxp, sminp, umaxp,
        uminp, smax_nanp, smin_nanp): New builtins.
        * config/aarch64/arm_neon.h (vpmax_s8, vpmax_s16, vpmax_s32,
        vpmax_u8, vpmax_u16, vpmax_u32, vpmaxq_s8, vpmaxq_s16, vpmaxq_s32,
        vpmaxq_u8, vpmaxq_u16, vpmaxq_u32, vpmax_f32, vpmaxq_f32, vpmaxq_f64,
        vpmaxqd_f64, vpmaxs_f32, vpmaxnm_f32, vpmaxnmq_f32, vpmaxnmq_f64,
        vpmaxnmqd_f64, vpmaxnms_f32, vpmin_s8, vpmin_s16, vpmin_s32, vpmin_u8,
        vpmin_u16, vpmin_u32, vpminq_s8, vpminq_s16, vpminq_s32, vpminq_u8,
        vpminq_u16, vpminq_u32, vpmin_f32, vpminq_f32, vpminq_f64, vpminqd_f64,
        vpmins_f32, vpminnm_f32, vpminnmq_f32, vpminnmq_f64, vpminnmqd_f64,
        vpminnms_f32): Rewrite using builtin functions.

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

9 years agoRemove 2014 entries somebody mistakenly readded.
jakub [Mon, 19 Jan 2015 13:11:54 +0000 (13:11 +0000)]
Remove 2014 entries somebody mistakenly readded.

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

9 years ago2015-01-19 Tejas Belagod <tejas.belagod@arm.com>
belagod [Mon, 19 Jan 2015 12:57:48 +0000 (12:57 +0000)]
2015-01-19  Tejas Belagod  <tejas.belagod@arm.com>

PR target/63971
* gcc.target/aarch64/test_frame_1.c: Expect only two loads of x30 (in
the epilogue).
* gcc.target/aarch64/test_frame_6.c: Likewise.
* gcc.target/aarch64/test_frame_2.c: Expect only one pair load of x30
and x19 (in the epilogue).
* gcc.target/aarch64/test_frame_4.c: Likewise.
* gcc.target/aarch64/test_frame_7.c: Likewise.

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

9 years ago[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter.
tschwinge [Mon, 19 Jan 2015 12:05:43 +0000 (12:05 +0000)]
[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter.

gcc/
* omp-low.c (offload_symbol_decl): Remove variable.
(get_offload_symbol_decl): Remove function.
(expand_omp_target): For BUILT_IN_GOMP_TARGET,
BUILT_IN_GOMP_TARGET_DATA, BUILT_IN_GOMP_TARGET_UPDATE pass NULL
instead of &__OFFLOAD_TABLE__, for BUILT_IN_GOACC_DATA_START,
BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL,
BUILT_IN_GOACC_UPDATE don't pass it at all.
libgomp/
* libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
(GOACC_parallel, GOACC_update): Remove const_void *offload_table
formal parameter.  Update all users.
* target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
Document unused formal parameter.

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

9 years ago[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter.
tschwinge [Mon, 19 Jan 2015 12:03:35 +0000 (12:03 +0000)]
[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter.

gcc/
* omp-low.c (offload_symbol_decl): Remove variable.
(get_offload_symbol_decl): Remove function.
(expand_omp_target): For BUILT_IN_GOMP_TARGET,
BUILT_IN_GOMP_TARGET_DATA, BUILT_IN_GOMP_TARGET_UPDATE pass NULL
instead of &__OFFLOAD_TABLE__, for BUILT_IN_GOACC_DATA_START,
BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL,
BUILT_IN_GOACC_UPDATE don't pass it at all.
libgomp/
* libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
(GOACC_parallel, GOACC_update): Remove const_void *offload_table
formal parameter.  Update all users.
* target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
Document unused formal parameter.

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

9 years ago * tree-sra.c (some_callers_have_mismatched_arguments_p): Allow thunk
ienkovich [Mon, 19 Jan 2015 10:28:34 +0000 (10:28 +0000)]
* tree-sra.c (some_callers_have_mismatched_arguments_p): Allow thunk
callers.

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

9 years agogcc/
ienkovich [Mon, 19 Jan 2015 10:26:52 +0000 (10:26 +0000)]
gcc/

* ipa-chkp.c (chkp_produce_thunks): Add early param
to split thunks production into two passes.  Keep
'always_inline' function bodies after the first pass.
(pass_data_ipa_chkp_early_produce_thunks): New.
(pass_ipa_chkp_early_produce_thunks): New.
(pass_ipa_chkp_produce_thunks::execute): Adjust to new
chkp_produce_thunks signature.
(make_pass_ipa_chkp_early_produce_thunks): New.
* passes.def (pass_ipa_chkp_early_produce_thunks): New.
(pass_ipa_chkp_produce_thunks): Move after local optimizations.
* tree-pass.h (make_pass_ipa_chkp_early_produce_thunks): New.

gcc/testsuite/

* gcc.target/i386/chkp-always_inline.c: New.

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

9 years ago PR sanitizer/64435
jakub [Mon, 19 Jan 2015 08:39:27 +0000 (08:39 +0000)]
PR sanitizer/64435
* sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick
upstream r223925.

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

9 years ago * gcc.target/aarch64/aapcs64/abitest.S (LABEL_TEST_FUNC_RETURN): Load
naveenh [Mon, 19 Jan 2015 04:46:27 +0000 (04:46 +0000)]
* gcc.target/aarch64/aapcs64/abitest.S (LABEL_TEST_FUNC_RETURN): Load
testfunc_ptr as 32bit for ILP32 and 64bit for LP64.

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

9 years agoreflect: Fix build for systems that do not define ffi_go_closure.
ian [Mon, 19 Jan 2015 02:56:28 +0000 (02:56 +0000)]
reflect: Fix build for systems that do not define ffi_go_closure.

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

9 years agoDaily bump.
gccadmin [Mon, 19 Jan 2015 00:17:04 +0000 (00:17 +0000)]
Daily bump.

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

9 years ago2015-01-18 Andre Vehreschild <vehre@gmx.de>
pault [Sun, 18 Jan 2015 22:01:29 +0000 (22:01 +0000)]
2015-01-18  Andre Vehreschild  <vehre@gmx.de>
    Janus Weil <janus@gcc.gnu.org>

PR fortran/60255
* class.c (gfc_get_len_component): New.
(gfc_build_class_symbol): Add _len component to unlimited
polymorphic entities.
(find_intrinsic_vtab): Removed emitting of error message.
* gfortran.h: Added prototype for gfc_get_len_component.
* simplify.c (gfc_simplify_len): Use _len component where
available.
* trans-expr.c (gfc_class_len_get): New.
(gfc_conv_intrinsic_to_class): Add handling for deferred
character arrays.
(gfc_conv_structure): Treat _len component correctly.
(gfc_conv_expr): Prevent bind_c handling when not required.
(gfc_trans_pointer_assignment): Propagate _len component.
* trans-stmt.c (class_has_len_component): New.
(trans_associate_var): _len component treatment for associate
context.
(gfc_trans_allocate): Same as for trans_associate_var()
* trans.h: Added prototype for gfc_class_len_get.

2015-01-18  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60255
* gfortran.dg/unlimited_polymorphic_2.f03: Removed error.
* gfortran.dg/unlimited_polymorphic_20.f03: New test.

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

PR fortran/64578
* gfortran.dg/unlimited_polymorphic_21.f90: New test

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

9 years ago * lto.c (compare_tree_sccs_1): Add comparsion of
hubicka [Sun, 18 Jan 2015 19:33:32 +0000 (19:33 +0000)]
* lto.c (compare_tree_sccs_1): Add comparsion of
DECL_FUNCTION_SPECIFIC_TARGET

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

9 years ago * cgraph.c (cgraph_node::dump): Dump profile flags.
hubicka [Sun, 18 Jan 2015 19:31:58 +0000 (19:31 +0000)]
* cgraph.c (cgraph_node::dump): Dump profile flags.

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

9 years agogcc/
olegendo [Sun, 18 Jan 2015 18:12:53 +0000 (18:12 +0000)]
gcc/
PR target/64652
* config/sh/sh.md (udivsi3_i4, divsi3_i4): Make use of sfunc address
reg appear first in the parallel.

gcc/testsuite/
PR target/64652
* gcc.target/sh/torture/pr64652.c: New.

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

9 years ago * gcc.dg/ipa/ipa-icf-32.c: Update template.
hubicka [Sun, 18 Jan 2015 17:42:11 +0000 (17:42 +0000)]
* gcc.dg/ipa/ipa-icf-32.c: Update template.
* c-c++-common/asan/instrument-with-calls-3.c: Likewise.
* c-c++-common/asan/instrument-with-calls-2.c: Likewise.
* c-c++-common/asan/instrument-with-calls-1.c: Likewise.
* c-c++-common/asan/kasan-recover-1.c: Likewise.
* c-c++-common/asan/kasan-recover-2.c: Likewise.

* ipa-reference.c (set_reference_optimization_summary,
ipa_reference_get_not_written_global): Do nothing if ipa-reference is disabled.
(ignore_module_statics): New static var.
(propagate_bits): If ipa-reference is disabled, do not look into local properties.
(analyze_function): Disable analysis when ipa_reference is disabled.
(generate_summary): Do not dump when reference is disabled;
collect vars accessed from functions with ipa-reference disabled.
(get_read_write_all_from_node): When ipa-reference is disabled, use the
node flags.
(gate): Enable for LTO.
(ignore_edge_p): New function.
(propagate): Skip functions w/o ipa-reference analysis.
* optc-save-gen.awk: Handle optimize_debug correctly.
* opth-gen.awk: Likewise.
* common.opt (fauto-inc-dec, fdelete-dead-exceptions, ffunction-cse,
fgraphite, fstrict-volatile-bitfields, fira-algorithm, fira-region,
fira-share-save-slots, fira-share-spill-slots,
fmodulo-sched-allow-regmoves, fpartial-inlining,
sched-stalled-insns, fsched-stalled-insns-dep, fstrict-overflow,
ftracer, ftree-parallelize-loops, fassociative-math,
freciprocal-math, fvect-cost-model, fsimd-cost-model): Mark as
Optimization
(fauto-profile, fcommon, fdata-sections, fipa-icf-variables,
        ftoplevel-reorder, funit-at-a-time, fwhole-program): Do not mark as
        Optimization.
* ipa-icf.c (gate, sem_item_optimizer::filter_removed_items):
Fix for IPA.

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

9 years ago PR ipa/64378
hubicka [Sun, 18 Jan 2015 17:31:35 +0000 (17:31 +0000)]
PR ipa/64378
* ipa-prop.c (try_make_edge_direct_virtual_call): Clear speculative
flag correctly.
* ipa-cp.c (ipa_get_indirect_edge_target_1): Handle speculation.
* g++.dg/torture/pr64378.C: New testcase.

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

9 years ago PR libstdc++/64646
redi [Sun, 18 Jan 2015 16:31:06 +0000 (16:31 +0000)]
PR libstdc++/64646
* include/bits/stl_algo.h (__is_permutation): Also test for reaching
end of the second range.
* testsuite/25_algorithms/is_permutation/64646.cc: New.

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

9 years agocorrect PR numbers on previous commit
pault [Sun, 18 Jan 2015 16:02:43 +0000 (16:02 +0000)]
correct PR numbers on previous commit

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

9 years ago2015-01-18 Paul Thomas <pault@gcc.gnu.org>
pault [Sun, 18 Jan 2015 15:52:49 +0000 (15:52 +0000)]
2015-01-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/64578
* trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
for allocatable components, where the source is a variable.

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

PR fortran/64578
* gfortran.dg/block_13.f08: New test

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

9 years ago * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
redi [Sun, 18 Jan 2015 15:47:18 +0000 (15:47 +0000)]
* doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
* doc/html/manual/status.html: Regenerate.

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

9 years ago * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
redi [Sun, 18 Jan 2015 14:38:53 +0000 (14:38 +0000)]
* src/c++11/futex.cc: Fix order of includes and preprocessor condition.

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

9 years ago * include/bits/atomic_futex.h: Use mutex and condition_variable when
redi [Sun, 18 Jan 2015 14:25:22 +0000 (14:25 +0000)]
* include/bits/atomic_futex.h: Use mutex and condition_variable when
atomic int is not lock-free. Make member variables private.
* src/c++11/futex.cc: Likewise.

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

9 years ago2015-01-18 Paul Thomas <pault@gcc.gnu.org>
pault [Sun, 18 Jan 2015 12:21:38 +0000 (12:21 +0000)]
2015-01-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/55901
* primary.c (gfc_match_varspec): Exclude dangling associate-
names with dimension 0 from being counted as arrays.
* resolve.c (resolve_assoc_var): Sub-strings are permissible
for associate-names, so exclude characters from the test for
misuse as arrays.
* trans-decl.c (gfc_get_symbol_decl): Associate-names can use
the hidden string length variable of their associated target.
Signal this by setting 'length' to a constant, if the decl for
the string length is a variable.

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

PR fortran/55901
* gfortran.dg/associate_1.f03: Allow test for character with
automatic length.

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

9 years ago2015-01-18 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sun, 18 Jan 2015 03:19:58 +0000 (03:19 +0000)]
2015-01-18  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi ([-funroll-loops], [-funroll-all-loops]):
Remove duplicate option listings.

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

9 years ago * auto-profile.c (afdo_find_equiv_class): Remove unnecessary test.
fyang [Sun, 18 Jan 2015 02:25:42 +0000 (02:25 +0000)]
    * auto-profile.c (afdo_find_equiv_class): Remove unnecessary test.
        (autofdo_source_profile::get_callsite_total_count,
        function_instance::get_function_instance_by_decl,
        string_table::get_index, string_table::get_index_by_decl,
        afdo_vpt_for_early_inline, afdo_callsite_hot_enough_for_early_inline):
        Fix comment typos. Reformatting and minor code rearrangement.

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

9 years agoDaily bump.
gccadmin [Sun, 18 Jan 2015 00:17:04 +0000 (00:17 +0000)]
Daily bump.

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

9 years ago * gcc.target/powerpc/ppc-fpconv-4.c: Skip for -mpowerpc64.
segher [Sat, 17 Jan 2015 21:12:24 +0000 (21:12 +0000)]
* gcc.target/powerpc/ppc-fpconv-4.c: Skip for -mpowerpc64.
* gcc.target/powerpc/ppc-fpconv-8.c: Ditto.

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

9 years ago * gcc.dg/20020919-1.c: Use _ARCH_PPC64 to test for -mpowerpc64.
segher [Sat, 17 Jan 2015 21:10:30 +0000 (21:10 +0000)]
* gcc.dg/20020919-1.c: Use _ARCH_PPC64 to test for -mpowerpc64.

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

9 years ago * config/rs6000/rs6000.md (probe_stack): Delete.
segher [Sat, 17 Jan 2015 21:08:39 +0000 (21:08 +0000)]
* config/rs6000/rs6000.md (probe_stack): Delete.
(probe_stack_address): New.

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

9 years ago * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use TARGET_32BIT
segher [Sat, 17 Jan 2015 21:04:23 +0000 (21:04 +0000)]
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use TARGET_32BIT
to test for 32-bit ABIs, not !TARGET_POWERPC64.

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

9 years ago * config/rs6000/rs6000.c (rs6000_parallel_return): New function.
segher [Sat, 17 Jan 2015 20:58:12 +0000 (20:58 +0000)]
* config/rs6000/rs6000.c (rs6000_parallel_return): New function.
(rs6000_function_value): Use it.  Handle SCmode and TCmode as well,
for TARGET_32BIT && TARGET_POWERPC64.  Fix another BITS_PER_WORD
snafu.
(rs6000_libcall_value): Use the new function.

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

9 years ago2015-01-17 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sat, 17 Jan 2015 20:51:24 +0000 (20:51 +0000)]
2015-01-17  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi ([-ftracer]): Remove duplicate option listing.

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

9 years ago2015-01-17 Paul Thomas <pault@gcc.gnu.org>
pault [Sat, 17 Jan 2015 20:44:07 +0000 (20:44 +0000)]
2015-01-17  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/64578
* trans-expr.c (gfc_trans_pointer_assignment): Make sure that
before reinitializing rse, to add the rse.pre to block before
creating 'ptrtemp'.
* trans-intrinsic.c (gfc_conv_associated): Deal with the class
data being a descriptor.

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

PR fortran/64578
* gfortran.dg/unlimited_polymorphic_21.f90: New test

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

9 years ago2015-01-17 Andre Vehreschild <vehre@gmx.de>
pault [Sat, 17 Jan 2015 18:08:38 +0000 (18:08 +0000)]
2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60357
* primary.c (build_actual_constructor): Prevent warning.
* trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
assignment): New function encapsulates treatment of allocatable
components.
(gfc_trans_subcomponent_assign): Needed to distinguish between
regular assignment and initilization.
(gfc_trans_structure_assign): Same.
(gfc_conv_structure): Same.

PR fortran/61275
* gfortran.h: deferred_parameter is not needed, because
it artificial does the trick completely.
* primary.c (build_actual_constructor): Same.
(gfc_convert_to_structure_constructor): Same.
* resolve.c (resolve_fl_derived0): Same.
* trans-expr.c (gfc_conv_component_ref): Prevent treating
allocatable deferred length char arrays here.
(gfc_trans_subcomponent_assign): Same as above.
* trans-types.c (gfc_sym_type): This is done in
gfc_get_derived_type already.

2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60357
* gfortran.dg/alloc_comp_assign_13.f08: New test.

PR fortran/61275
* gfortran.dg/alloc_comp_assign_14.f08: New test.

PR fortran/55932
* gfortran.dg/alloc_comp_initializer_4.f03: New test.

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

9 years ago * reorg.c (fill_simple_delay_slots): If TARGET_FLAGS_REGNUM is valid,
ebotcazou [Sat, 17 Jan 2015 14:00:57 +0000 (14:00 +0000)]
* reorg.c (fill_simple_delay_slots): If TARGET_FLAGS_REGNUM is valid,
implement a more precise life analysis for it during backward scan.

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

9 years ago PR libstdc++/64638
redi [Sat, 17 Jan 2015 13:48:48 +0000 (13:48 +0000)]
PR libstdc++/64638
* include/bits/atomic_futex.h: Use appropriate config macros for
availability of std::mutex, std::condition and std::chrono.

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

9 years ago2015-01-17 Andre Vehreschild <vehre@gmx.de>
pault [Sat, 17 Jan 2015 11:07:57 +0000 (11:07 +0000)]
2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60334
* trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
length when the symbol is declared to be a result.
* trans-expr.c (gfc_conv_procedure_call): Strip deref on the
string length when functions are nested and the string length
is a reference already.

2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60334
* gfortran.dg/deferred_type_param_6.f90: Add tests for this PR.

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

9 years ago2015-01-17 Jan Kratochvil <jan.kratochvil@redhat.com>
jkratoch [Sat, 17 Jan 2015 08:00:13 +0000 (08:00 +0000)]
2015-01-17  Jan Kratochvil  <jan.kratochvil@redhat.com>

* dwarf2out.c (gen_producer_string): Ignore also OPT_fpreprocessed.

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

9 years ago PR rtl-optimization/52773
law [Sat, 17 Jan 2015 07:35:40 +0000 (07:35 +0000)]
PR rtl-optimization/52773
* calls.c (emit_library_call_value): When pushing arguments use
stack_pointer_rtx rather than virtual_outgoing_args_rtx in
CALL_INSN_FUNCTION_USAGE.  Only emit one of use of the magic
stack pointer reference into CALL_INSN_FUNCTION_USAGE.

PR rtl-optimization/52773
* gcc.c-torture/compile/pr52773.c: New test.

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

9 years ago PR rtl-optimization/32790
law [Sat, 17 Jan 2015 07:24:24 +0000 (07:24 +0000)]
PR rtl-optimization/32790
        * reginfo.c (reg_scan_mark_refs): Look for ZERO_EXTRACT,
        not ZERO_EXTEND in SET_DESTs.

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

9 years ago2015-01-17 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Sat, 17 Jan 2015 03:23:52 +0000 (03:23 +0000)]
2015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
    Jonathan Wakely  <jwakely@redhat.com>

* doc/xml/manual/status_cxx2011.xml: Update C++11 status.
* doc/html/*: Regenerate.

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

9 years ago DR 488
redi [Sat, 17 Jan 2015 03:15:52 +0000 (03:15 +0000)]
DR 488
PR libstdc++/58357
* include/bits/algorithmfwd.h (rotate): Return an iterator.
* include/bits/stl_algo.h (rotate, __rotate): Likewise.
* testsuite/25_algorithms/rotate/dr488.cc: New.
* testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2.cc: Likewise.
* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
pod.cc: Likewise.

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

9 years agoRevert last change
amodra [Sat, 17 Jan 2015 03:04:55 +0000 (03:04 +0000)]
Revert last change

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

9 years ago* config/rl78/rl78-real.md (addqi3_real): Allow volatiles.
dj [Sat, 17 Jan 2015 02:57:53 +0000 (02:57 +0000)]
* config/rl78/rl78-real.md (addqi3_real): Allow volatiles.
(addhi3_real): Likewise.  Fix [HL+0] syntax.
(subqi3_real): Likewise.
(subhi3_real): Likewise.
(cbranchqi4_real): Likewise.  Allow saddr,#imm.
(cbranchhi4_real): Likewise.
(cbranchhi4_real_inverted): Likewise.
(cbranchsi4_real_lt): Likewise.
(cbranchsi4_real_ge): Likewise.
(cbranchsi4_real_ge): Likewise.
* config/rl78/rl78-virt.md (add<mode>3_virt): Likewise.
(sub<mode>3_virt): Likewise.
(cbranchqi4_virt): Likewise.
(cbranchhi4_virt): Likewise.
* config/rl78/rl78.c (rl78_print_operand_1): 'p' modifier means
always use '[reg+imm]' even when imm is zero.
* config/rl78/predicates.md (rl78_volatile_memory_operand): New.
(rl78_general_operand): New.
(rl78_nonimmediate_operand): New.
(rl78_nonfar_operand): Use them.
(rl78_nonfar_nonimm_operand): Likewise.
(rl78_stack_based_mem): Fix.
* config/rl78/constraints.md (Ibqi): New.
(IBqi): New.
(Wsa): New.
(Wsf): New.
(Cs1): Fix.
* config/rl78/rl78-expand.md (andqi3): Accept volatiles.
(iorqi3): Likewise.
(xorqi3): Likewise.
* config/rl78/rl78-protos.h (rl78_sfr_p): New.

        * config/rl78/constrains (Qs8): New constraint.
        * config/rl78/rl78.c (rl78_flags_already_set): New function.
        * config/rl78/rl78-protos.h (rl78_flags_already_set): New prototype.
        * config/rl78/rl78-real.md (update_Z): New attribute.
        Update patterns to set it.
        (cbranchqi4_real): Call rl78_flags_already_set() to determine if a
        shorter compare and branch sequence can be used.
        (cbranchhi4_real): Likewise.
        (cbranchhi4_real_inverted): Likewise.

* config/rl78/predicates.md (uword_operand): Allow symbol_refs.
* config/rl78/rl78-c.c (rl78_register_pragmas): Register __near
address space.
* config/rl78/rl78.c (rl78_get_name_encoding): New.
(rl78_option_override): Allow -mes0 only if C.
(characterize_address): Support subregs of symbol_refs.
(rl78_addr_space_address_mode): Move.  Add __near.
(rl78_far_p): Likewise.
(rl78_addr_space_pointer_mode): Likewise.
(rl78_as_legitimate_address): Likewise.
(rl78_addr_space_subset_p): Likewise.
(rl78_addr_space_convert): Likewise.
(rl78_print_operand_1): Support 16-bit addressing of 32-bit
symbols with -mes0.
(transcode_memory_rtx): Don't copy ES if -mes0.  Allow symbol[BC]
addressing.
(rl78_alloc_physical_registers_op1): Change logic to prefer
symbol[BC] addressing.
(frodata_section): New.
(rl78_asm_init_sections): Initialize it.
(rl78_select_section): Put __far readonly symbols in .frodata.
(rl78_make_type_far): New.
(rl78_insert_attributes): Force all readonly symbols to be __far when -mes0.
(rl78_asm_out_integer): New.
* config/rl78/rl78.h (ADDR_SPACE_NEAR): New.
* config/rl78/rl78.opt (-mes0): New.

* config/rl78/rl78.h (ASM_OUTPUT_LABELREF): New.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
* config/rl78/rl78-protos.h (rl78_output_labelref): New.
(rl78_saddr_p): New.
(rl78_output_aligned_common): New.
* config/rl78/rl78.c (rl78_output_symbol_ref): Strip encodings.
(rl78_handle_saddr_attribute): New.
(rl78_handle_naked_attribute): New.
(rl78_attribute_table): Add saddr.
(rl78_print_operand_1): Don't print '!' on saddr operands.
(rl78_print_operand_1): Strip encodings.
(rl78_sfr_p): New.
(rl78_strip_name_encoding): New.
(rl78_attrlist_to_encoding): New.
(rl78_encode_section_info): New.
(rl78_asm_init_sections): New.
(rl78_select_section): New.
(rl78_output_labelref): New.
(rl78_output_aligned_common): New.
(rl78_asm_out_integer): New.
(rl78_asm_ctor_dtor): New.
(rl78_asm_constructor): New.
(rl78_asm_destructor): New.

* config/rl78/rl78-real.md (movqi_es): Rename to movqi_to_es.
* config/rl78/rl78.c (rl78_expand_epilogue): Update.
(transcode_memory_rtx): Update.
(rl78_expand_epilogue): Use A_REG instead of 0.

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

9 years ago PR libstdc++/60940
redi [Sat, 17 Jan 2015 01:23:28 +0000 (01:23 +0000)]
PR libstdc++/60940
* include/bits/atomic_base.h: Remove atomic integral typedefs as
synonyms for __atomic_base<int> etc.
* include/std/atomic: Make atomic_int a synonym for atomic<int> and
likewise for all atomic integral types.
* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.

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

9 years agoModel cache auto-prefetcher in scheduler
mkuvyrkov [Sat, 17 Jan 2015 01:06:43 +0000 (01:06 +0000)]
Model cache auto-prefetcher in scheduler

* config/arm/arm-protos.h (struct tune_params): New field
sched_autopref_queue_depth.
* config/arm/arm.c (sched-int.h): Include header.
(arm_first_cycle_multipass_dfa_lookahead_guard,)
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD): Define hook.
(arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,)
(arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,)
(arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,)
(arm_cortex_a53_tune, arm_cortex_a57_tune, arm_xgene1_tune,)
(arm_cortex_a5_tune, arm_cortex_a9_tune, arm_cortex_a12_tune,)
(arm_v7m_tune, arm_cortex_m7_tune, arm_v6m_tune, arm_fa726te_tune):
Specify sched_autopref_queue_depth value.  Enabled for A15 and A57.
* config/arm/t-arm (arm.o): Update.
* haifa-sched.c (update_insn_after_change): Update.
(rank_for_schedule): Use auto-prefetcher model, if requested.
(autopref_multipass_init): New static function.
(autopref_rank_for_schedule): New rank_for_schedule heuristic.
(autopref_multipass_dfa_lookahead_guard_started_dump_p): New static
variable for debug dumps.
(autopref_multipass_dfa_lookahead_guard_1): New static helper function.
(autopref_multipass_dfa_lookahead_guard): New global function that
implements TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD hook.
(init_h_i_d): Update.
* params.def (PARAM_SCHED_AUTOPREF_QUEUE_DEPTH): New tuning knob.
* sched-int.h (enum autopref_multipass_data_status): New const enum.
(autopref_multipass_data_): Structure for auto-prefetcher data.
(autopref_multipass_data_def, autopref_multipass_data_t): New typedefs.
(struct _haifa_insn_data:autopref_multipass_data): New field.
(INSN_AUTOPREF_MULTIPASS_DATA): New access macro.
(autopref_multipass_dfa_lookahead_guard): Declare.

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

9 years agoHandle SCRATCH in decompose_address
mkuvyrkov [Sat, 17 Jan 2015 01:06:29 +0000 (01:06 +0000)]
Handle SCRATCH in decompose_address

* rtlanal.c (get_base_term): Handle SCRATCH.

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

9 years agoEnable max_issue for AArch32 and AArch64
mkuvyrkov [Sat, 17 Jan 2015 01:06:17 +0000 (01:06 +0000)]
Enable max_issue for AArch32 and AArch64
* config/aarch64/aarch64.c
(aarch64_sched_first_cycle_multipass_dfa_lookahead): Implement hook.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
* config/arm/arm.c
(arm_first_cycle_multipass_dfa_lookahead): Implement hook.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.

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

9 years ago * cprop.c (do_local_cprop): Disallow replacement of fixed
amodra [Sat, 17 Jan 2015 00:41:52 +0000 (00:41 +0000)]
* cprop.c (do_local_cprop): Disallow replacement of fixed
hard registers.

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

9 years ago PR libstdc++/56785
redi [Sat, 17 Jan 2015 00:21:41 +0000 (00:21 +0000)]
PR libstdc++/56785
* include/std/tuple (_Tuple_impl): Remove zero-element specialization
and define one-element specialization.
* testsuite/20_util/tuple/56785.cc: New.

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

9 years agoDaily bump.
gccadmin [Sat, 17 Jan 2015 00:16:37 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
redi [Sat, 17 Jan 2015 00:12:50 +0000 (00:12 +0000)]
* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
Remove unused header.
* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
Likewise.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
Likewise.

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

9 years ago * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
redi [Fri, 16 Jan 2015 23:38:48 +0000 (23:38 +0000)]
* include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
* include/std/locale: Include new header.
* include/Makefile.am: Add it.
* include/Makefile.in: Regenerate.
* testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
* testsuite/22_locale/conversions/string/1.cc: New.
* testsuite/22_locale/conversions/string/2.cc: New.
* testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
* testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
New.

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

9 years agoImplement C++11 <codecvt> header.
redi [Fri, 16 Jan 2015 23:38:35 +0000 (23:38 +0000)]
Implement C++11 <codecvt> header.

* config/abi/pre/gnu.ver: Export new symbols.
* include/Makefile.am: Add codecvt.
* include/Makefile.in: Regenerate.
* include/std/codecvt: New header.
* src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
__codecvt_utf8_utf16_base): Define specializations.
* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
New.

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

9 years agoruntime: Add __sparc__ case for SETCONTEXT_CLOBBERS_TLS.
ian [Fri, 16 Jan 2015 23:23:31 +0000 (23:23 +0000)]
runtime: Add __sparc__ case for SETCONTEXT_CLOBBERS_TLS.

The glibc setcontext incorrectly modifies %g7 on SPARC.

From Richard Henderson.

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

9 years agotesting/quick: Revert Alpha specific change.
ian [Fri, 16 Jan 2015 23:19:20 +0000 (23:19 +0000)]
testing/quick: Revert Alpha specific change.

No longer needed now that libffi supports complex types.

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

9 years agocompiler, reflect, runtime: Use static chain for closures.
ian [Fri, 16 Jan 2015 22:58:53 +0000 (22:58 +0000)]
compiler, reflect, runtime: Use static chain for closures.

Change from using __go_set_closure to passing the closure
value in the static chain field.  Uses new backend support for
setting the closure chain in a call from C via
__builtin_call_with_static_chain.  Uses new support in libffi
for Go closures.

The old architecture specific support for reflect.MakeFunc is
removed, replaced by the libffi support.

All work done by Richard Henderson.

* go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument.
(Gcc_backend::static_chain_variable): New method.

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

9 years ago * doc/invoke.texi (--param early-inlining-insns): Update default value.
hubicka [Fri, 16 Jan 2015 22:21:50 +0000 (22:21 +0000)]
* doc/invoke.texi (--param early-inlining-insns): Update default value.
* params.def (PARAM_EARLY_INLINING_INSNS): Set to 14.

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

9 years agoParallelize the jit testsuite
dmalcolm [Fri, 16 Jan 2015 21:30:26 +0000 (21:30 +0000)]
Parallelize the jit testsuite

gcc/jit/ChangeLog:
* Make-lang.in (lang_checks_parallelized): Add "check-jit".
(check_jit_parallelize): Set this to an arbitrary value (10).

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

9 years agoPR libffi/64607
rth [Fri, 16 Jan 2015 20:51:14 +0000 (20:51 +0000)]
PR libffi/64607

 * Makefile.am (AM_MAKEFLAGS): Use double quotes on subvariables.
 * Makefile.in: Rebuilt.

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

9 years agolibgomp: Don't use <alloca.h>.
tschwinge [Fri, 16 Jan 2015 20:05:21 +0000 (20:05 +0000)]
libgomp: Don't use <alloca.h>.

libgomp/
* oacc-parallel.c: Don't include <alloca.h>.
(GOACC_parallel): Use gomp_alloca instead of alloca.

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

9 years agolibstdc++: Optimize synchronization in std::future if futexes are available.
torvald [Fri, 16 Jan 2015 19:50:43 +0000 (19:50 +0000)]
libstdc++: Optimize synchronization in std::future if futexes are available.

* src/c++11/futex.cc: New file.
* include/bits/atomic_futex.h: New file.
* include/std/future (__future_base::_State_baseV2): Use
atomic_futex_unsigned instead of mutex+condvar.
* src/c++11/futex.cc: Likewise.
* include/Makefile.am: Add atomic_futex.h.
* include/Makefile.in: Likewise.
* src/c++11/Makefile.am: Add futex.cc.
* src/c++11/Makefile.in: Likewise.

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

9 years ago[ARM/AArch64][testsuite] Add vld1_lane tests.
clyon [Fri, 16 Jan 2015 18:26:57 +0000 (18:26 +0000)]
[ARM/AArch64][testsuite] Add vld1_lane tests.

* gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c: New file.

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

9 years ago2015-01-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 16 Jan 2015 18:24:52 +0000 (18:24 +0000)]
2015-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62134
* g++.dg/cpp0x/alias-decl-46.C: New.

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

9 years ago[ARM/AArch64][testsuite] Be more verbose, and actually confirm that a
clyon [Fri, 16 Jan 2015 18:21:53 +0000 (18:21 +0000)]
[ARM/AArch64][testsuite] Be more verbose, and actually confirm that a
test was checked.

* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK):
Add trace.
        (CHECK_FP): Likewise.
        (CHECK_CUMULATIVE_SAT): Likewise.

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

9 years ago[ARM/AArch64][testsuite] Add explicit dependency on Neon Cumulative Saturation flag
clyon [Fri, 16 Jan 2015 18:19:42 +0000 (18:19 +0000)]
[ARM/AArch64][testsuite] Add explicit dependency on Neon Cumulative Saturation flag

        * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
        (Set_Neon_Cumulative_Sat): Add parameter.
        (__set_neon_cumulative_sat): Support new parameter.
        * gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.inc
        (TEST_BINARY_SAT_OP1): Call Set_Neon_Cumulative_Sat with new
        argument.
        * gcc.target/aarch64/advsimd-intrinsics/unary_sat_op.inc
        (TEST_UNARY_SAT_OP1): Call Set_Neon_Cumulative_Sat with new
        argument.

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

9 years ago[ARM] PR 62066: Call va_end on early return from va_list processing function
ktkachov [Fri, 16 Jan 2015 18:14:37 +0000 (18:14 +0000)]
[ARM] PR 62066: Call va_end on early return from va_list processing function

PR target/62066
* config/arm/arm-builtins.c (arm_expand_neon_args): Call va_end before
early return 0.

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

9 years agooops.. fixed typo in ChangeLog
edlinger [Fri, 16 Jan 2015 18:02:25 +0000 (18:02 +0000)]
oops.. fixed typo in ChangeLog

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

9 years ago2015-01-16 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Fri, 16 Jan 2015 17:49:56 +0000 (17:49 +0000)]
2015-01-16  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * sanititer.def (BUILT_IN_TSAN_VPTR_UPDATE): Fixed parameters.
        * tsan.c (instrument_expr): Fixed parameters of __tsan_vptr_update.

gcc/testsuite/ChangeLog
2015-01-16  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * g++.dg/tsan/vptr_benign_race.C: New testcase.
        * g++.dg/tsan/vptr_harmful_race.C: New testcase.

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