Arnaud Charlet [Fri, 20 Feb 2015 09:48:22 +0000 (10:48 +0100)]
[multiple changes]
2015-02-20 Eric Botcazou <ebotcazou@adacore.com>
* sinfo.ads: Add comment.
2015-02-20 Olivier Hainque <hainque@adacore.com>
* opt.ads: Replace Opt.Suppress_All_Inlining by two separate
flags controlling the actual FE inlining out of pragma Inline
and pragma Inline_Always.
* adabkend.adb (Scan_Compiler_Arguments): Set both flags to True
on -fno-inline, which disables all inlining in compilers with
an Ada back-end and without back-end inlining support.
* back_end.adb (Scan_Back_End_Switches): Set the Inline related
flag to True on -fno-inline and leave Inline_Always alone for
gcc back-ends.
* back_end.ads (Scan_Compiler_Arguments): Adjust spec wrt the
names of the Opt flags it sets.
* gnat1drv.adb (Adjust_Global_Switches): Remove test on
Opt.Suppress_All_Inlining in the Back_End_Inlining computation.
* sem_prag.adb (Make_Inline): Remove early return conditioned
on Opt.Suppress_All_Inlining.
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the flags to
disable the calls to Build_Body_To_Inline otherwise triggered
by pragma Inline or Inline_Always. This will prevent actual
front-end inlining of the subprogram on calls.
From-SVN: r220842
Eric Botcazou [Fri, 20 Feb 2015 09:45:50 +0000 (09:45 +0000)]
exp_ch3.adb (Default_Initialize_Object): Call Add_Inlined_Body on the Abort_Undefer_Direct function.
2015-02-20 Eric Botcazou <ebotcazou@adacore.com>
* exp_ch3.adb (Default_Initialize_Object): Call Add_Inlined_Body on the
Abort_Undefer_Direct function.
* exp_ch5.adb (Expand_N_Assignment_Statement): Likewise.
* exp_intr.adb (Expand_Unc_Deallocation): Likewise.
* exp_prag.adb (Expand_Pragma_Abort_Defer): Likewise.
* exp_ch4.adb (Expand_N_Selected_Component): Adjust call to
Add_Inlined_Body.
* exp_ch6.adb (Expand_Call): Adjust calls to Add_Inlined_Body.
Remove call to Register_Backend_Call and move code resetting
Needs_Debug_Info on inlined subprograms to...
* inline.ads (Add_Inlined_Body): Add N parameter.
(Register_Backend_Call): Delete.
* inline.adb (Add_Inlined_Body): ...here and simplify.
Register the call with Backend_Calls directly.
(Register_Backend_Call): Delete.
* s-stalib.ads (Abort_Undefer_Direct): Restore pragma Inline.
From-SVN: r220841
Arnaud Charlet [Fri, 20 Feb 2015 09:43:40 +0000 (10:43 +0100)]
[multiple changes]
2015-02-20 Eric Botcazou <ebotcazou@adacore.com>
* s-stalib.ads: Fix typo.
2015-02-20 Ed Schonberg <schonberg@adacore.com>
* exp_ch3.adb (Default_Initialize_Object): If the object has a
delayed freeze, the actions associated with default initialization
must be part of the freeze actions, rather that being inserted
directly after the object declaration.
2015-02-20 Robert Dewar <dewar@adacore.com>
* lib-load.adb: Minor comment update.
2015-02-20 Vincent Celier <celier@adacore.com>
* prj-proc.adb (Process_Case_Construction): When there are
incomplete withed projects and the case variable is unknown,
skip the case construction.
2015-02-20 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Actuals): Add caller-side invariant checks
when an actual is a view conversion, either because the call is
to an inherited operation, or because the actual is an explicit
type conversion to an ancestor type. Fixes ACATS 4.0D:
C732001
From-SVN: r220840
Arnaud Charlet [Fri, 20 Feb 2015 09:42:04 +0000 (10:42 +0100)]
[multiple changes]
2015-02-20 Robert Dewar <dewar@adacore.com>
* einfo.ads: Minor comment updates Fix missing pragma Inline
for Set_Partial_View_Has_Unknown_Discr.
* einfo.adb (Write_Entity_Flags): Add missing entry for
Partial_View_Has_Unknown_Discr.
* sem_ch3.adb: Minor reformatting.
2015-02-20 Vincent Celier <celier@adacore.com>
* opt.ads: Minor cleanup: remove mention of gprmake.
* s-stalib.ads (Abort_Undefer_Direct): Do not inline.
* s-tataat.adb: Do not call System.Tasking.Self but directly
System.Task_Primitives.Operations.Self.
From-SVN: r220839
Thomas Schwinge [Fri, 20 Feb 2015 09:40:52 +0000 (10:40 +0100)]
If we're building an offloading compiler, always enable the LTO front end.
* configure.ac [--enable-as-accelerator-for] (enable_languages):
Make sure it contains lto.
* configure: Regenerate.
From-SVN: r220838
Arnaud Charlet [Fri, 20 Feb 2015 09:11:44 +0000 (10:11 +0100)]
gnat_rm.texi, [...]: Now automatically generated from sphinx in the doc directory.
2015-02-20 Arnaud Charlet <charlet@adacore.com>
* gnat_rm.texi, gnat_ugn.texi: Now automatically generated from
sphinx in the doc directory.
* doc: New directory containing sphinx versions of gnat_rm and gnat_ugn
From-SVN: r220837
Arnaud Charlet [Fri, 20 Feb 2015 09:08:30 +0000 (10:08 +0100)]
[multiple changes]
2015-02-20 Robert Dewar <dewar@adacore.com>
* sem_res.adb: Minor reformatting.
* exp_ch9.adb (Build_Protected_Spec): Copy Aliased setting when
building spec.
* sem_ch13.adb (Analyze_Aspect_Specifications): Exclude Boolean
aspects from circuitry setting delay required to false if the
argument is an integer literal.
2015-02-20 Ed Schonberg <schonberg@adacore.com>
* einfo.ads. einfo.adb (Partial_View_Has_Unknown_Discr): New flag
on type entities, to enforce AI12-0133: default initialization
of types whose partial view has unknown discriminants does not
get an invariant check, because clients of the unit can never
declare objects of such types.
* sem_ch3.adb (Find_Type_Name); Set new flag
Partial_View_Has_Unknown_Discr when needed.
* exp_ch3.adb (Expand_N_Object_Declaration): Use flag to suppress
generation of invariant call on default-initialized object.
From-SVN: r220836
John David Anglin [Fri, 20 Feb 2015 00:33:24 +0000 (00:33 +0000)]
pa.c (pa_emit_move_sequence): Always force (const (plus (symbol) (const_int))) to const mem.
* config/pa/pa.c (pa_emit_move_sequence): Always force
(const (plus (symbol) (const_int))) to const mem. Put REG_EQUAL
note on insn.
From-SVN: r220833
GCC Administrator [Fri, 20 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220832
Kaz Kojima [Fri, 20 Feb 2015 00:00:21 +0000 (00:00 +0000)]
20040204-1.c: Don't XFAIL on sh*-*-*.
* gcc.dg/tree-ssa/
20040204-1.c: Don't XFAIL on sh*-*-*.
* gcc.dg/tree-ssa/sra-12.c: Skip for sh*-*-*.
From-SVN: r220829
John David Anglin [Thu, 19 Feb 2015 23:47:58 +0000 (23:47 +0000)]
pa.c (pa_reloc_rw_mask): New function.
* config/pa/pa.c (pa_reloc_rw_mask): New function.
(TARGET_ASM_RELOC_RW_MASK): Define.
(pa_cannot_force_const_mem): Revert previous change.
From-SVN: r220827
Martin Jambor [Thu, 19 Feb 2015 23:31:40 +0000 (23:31 +0000)]
re PR ipa/65028 (450.soplex in SPEC CPU 2006 is miscompiled)
PR ipa/65028
* ipa-cp.c (propagate_alignment_accross_jump_function): Fix propagation
across jump functions.
Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r220826
Uros Bizjak [Thu, 19 Feb 2015 21:25:52 +0000 (22:25 +0100)]
alpha.c (alpha_in_small_data_p): Reject common symbols.
* config/alpha/alpha.c (alpha_in_small_data_p): Reject common symbols.
From-SVN: r220825
Jonathan Wakely [Thu, 19 Feb 2015 20:57:40 +0000 (20:57 +0000)]
re PR libstdc++/58357 (In C++11 std::rotate(first, middle, last) now should return a forward iterator to first + (last - middle).)
PR libstdc++/58357
* include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
* include/bits/stl_algo.h (__rotate, rotate): Likewise.
From-SVN: r220823
Maxim Kuvyrkov [Thu, 19 Feb 2015 19:57:30 +0000 (19:57 +0000)]
re PR testsuite/65116 (ERROR: can't read additional_sources: no such variable)
Fix PR testsuite/65116
PR testsuite/65116
* lib/target-supports.exp (check_compile): Check whether
additional_sources is defined before using it.
From-SVN: r220822
Hans-Peter Nilsson [Thu, 19 Feb 2015 19:30:03 +0000 (19:30 +0000)]
re PR testsuite/65093 (26_numerics/random/binomial_distribution/operators/values.cc times out on slow targets)
PR testsuite/65093
* testsuite/26_numerics/random/binomial_distribution/operators/values.cc
(test01): Add explanatory comment. Keep only the bd1 sub-test and
split out bd2, bd3, bd4, and bd5 sub-tests into...
* testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
New separate files with the old parts.
From-SVN: r220821
Sandra Loosemore [Thu, 19 Feb 2015 16:04:53 +0000 (11:04 -0500)]
extend.texi (x86 transactional memory intrinsics): Copy-edit.
2015-02-19 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/extend.texi (x86 transactional memory intrinsics):
Copy-edit.
From-SVN: r220819
Jakub Jelinek [Thu, 19 Feb 2015 15:48:50 +0000 (16:48 +0100)]
re PR middle-end/65074 (r220674 broke C++ PIEs)
PR middle-end/65074
* g++.dg/opt/pr65074.C: New file.
From-SVN: r220817
Richard Henderson [Thu, 19 Feb 2015 15:14:24 +0000 (07:14 -0800)]
re PR middle-end/65074 (r220674 broke C++ PIEs)
PR middle-end/65074
* varasm.c (default_binds_local_p_2): Don't test node->definition;
test DECL_EXTERNAL independent of symtab_node.
From-SVN: r220816
Andrea Azzarone [Thu, 19 Feb 2015 13:45:25 +0000 (13:45 +0000)]
* g++.dg/cpp1y/udlit-char-template-vs-std-literal-operator.C
(size_type): New typedef.
(operator "" _script): Use it for the last argument.
From-SVN: r220814
Pedro Alves [Thu, 19 Feb 2015 12:18:45 +0000 (12:18 +0000)]
floatformat.h: Wrap in extern "C"
Just like libiberty.h. So that C++ programs, such as GDB when built
as a C++ program, can use it.
include/ChangeLog:
2015-02-19 Pedro Alves <palves@redhat.com>
* floatformat.h [__cplusplus]: Wrap in extern "C".
From-SVN: r220812
Pedro Alves [Thu, 19 Feb 2015 12:15:42 +0000 (12:15 +0000)]
Fix date in ChangeLog: 2015-12-14 -> 2014-12-14
From-SVN: r220811
Jakub Jelinek [Thu, 19 Feb 2015 11:56:00 +0000 (12:56 +0100)]
re PR lto/65012 (systemd fails to build at least on ppc64el, powerpc, arm-inux-gnueabihf and aarch64 with -flto (ICE))
PR lto/65012
* varpool.c (varpool_node::get_constructor): Return early
if this->lto_file_data is NULL.
From-SVN: r220810
Maxim Kuvyrkov [Thu, 19 Feb 2015 08:31:14 +0000 (08:31 +0000)]
re PR debug/64935 (compare debug failure during building of Linux kernel)
Fix PR64935
* haifa-sched.c (enum rfs_decision, rfs_str): Remove RFS_DEBUG.
(rank_for_schedule_debug): Update.
(ready_sort): Make static. Move sorting logic to ...
(ready_sort_debug, ready_sort_real): New static functions.
(schedule_block): Sort both debug insns and real insns in preparation
for ready list trimming. Improve debug output.
* sched-int.h (ready_sort): Remove global declaration.
* gcc.dg/pr64935-1.c, gcc.dg/pr64935-2.c: New tests.
From-SVN: r220808
Maxim Kuvyrkov [Thu, 19 Feb 2015 08:25:30 +0000 (08:25 +0000)]
Fix testsuite race on additional_sources
* testsuite/lib/target-supports.exp (check_compile): Save/restore
additional_sources that may belong to an actual test.
From-SVN: r220807
Trevor Saunders [Thu, 19 Feb 2015 01:44:42 +0000 (01:44 +0000)]
sem_function::bb_dict_test should take a vec<int> *
bb_dict_test () ment to operate on the callers vector, not a copy of it.
gcc/ChangeLog:
2015-02-18 Trevor Saunders <tsaunders@mozilla.com>
* ipa-icf.c (sem_function::equals_private): Adjust.
(sem_function::bb_dict_test): Take a vec<int> * instead of
auto_vec<int>.
* ipa-icf.h (bb_dict_test): Likewise.
From-SVN: r220806
GCC Administrator [Thu, 19 Feb 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220804
Jakub Jelinek [Wed, 18 Feb 2015 22:02:43 +0000 (23:02 +0100)]
re PR gcov-profile/64634 (gcov reports catch(...) as not executed)
PR gcov-profile/64634
* tree-eh.c (frob_into_branch_around): Fix up typos
in function comment.
(lower_catch): Put eh_seq resulting from EH lowering of
the cleanup sequence after the cleanup rather than before
it.
* g++.dg/gcov/gcov-15.C: New test.
From-SVN: r220801
Tom de Vries [Wed, 18 Feb 2015 21:16:20 +0000 (21:16 +0000)]
Add fstdarg-opt
2015-02-18 Tom de Vries <tom@codesourcery.com>
* common.opt (fstdarg-opt): New option.
* tree-stdarg.c (pass_stdarg::gate): Use flag_stdarg_opt.
* doc/invoke.texi (@item Optimization Options): Add -fstdarg-opt.
(@item -fstdarg-opt): New item.
From-SVN: r220800
Tom de Vries [Wed, 18 Feb 2015 21:08:24 +0000 (21:08 +0000)]
Add missing cleanup in gfortran.dg/coarray_35a.f90
2015-02-18 Tom de Vries <tom@codesourcery.com>
* gfortran.dg/coarray_35a.f90: Add missing cleanup-modules.
From-SVN: r220799
Tom de Vries [Wed, 18 Feb 2015 21:00:19 +0000 (21:00 +0000)]
Add missing cleanup in gfortran.dg/pr37287-1.f90
2015-02-18 Tom de Vries <tom@codesourcery.com>
* gfortran.dg/pr37287-1.f90: Add missing cleanup-modules.
From-SVN: r220798
Tom de Vries [Wed, 18 Feb 2015 20:40:24 +0000 (20:40 +0000)]
Add missing cleanup in gfortran.dg/finalize_28.f90
2015-02-18 Tom de Vries <tom@codesourcery.com>
* gfortran.dg/finalize_28.f90: Add missing cleanup-tree-dump.
From-SVN: r220797
Tom de Vries [Wed, 18 Feb 2015 20:30:12 +0000 (20:30 +0000)]
Add missing cleanup in gfortran.dg/fmt_cache_1.f
2015-02-18 Tom de Vries <tom@codesourcery.com>
* gfortran.dg/fmt_cache_1.f: Add missing close.
From-SVN: r220796
Jonathan Wakely [Wed, 18 Feb 2015 20:21:04 +0000 (20:21 +0000)]
char16_t.cc: Add dg-require-cstdint.
* testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
* testsuite/22_locale/codecvt/char32_t.cc: Likewise.
From-SVN: r220795
Tom de Vries [Wed, 18 Feb 2015 20:07:48 +0000 (20:07 +0000)]
Add missing cleanup in gfortran.dg/read_eof_8.f90
2015-02-18 Tom de Vries <tom@codesourcery.com>
PR testsuite/65107
* gfortran.dg/read_eof_8.f90: Add missing close.
From-SVN: r220794
Jonathan Wakely [Wed, 18 Feb 2015 19:39:03 +0000 (19:39 +0000)]
codecvt.cc (write_utf16_code_point): Fix code to output surrogate pairs.
* src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
surrogate pairs.
(utf16_in): Pass mode argument to write_utf16_code_point.
(codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
native byte order.
* testsuite/22_locale/codecvt/char16_t.cc: New.
* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
From-SVN: r220793
H.J. Lu [Wed, 18 Feb 2015 17:24:20 +0000 (17:24 +0000)]
Return false for common symbols in sdata_symbolic_operand
Although common symbols are defined in executables, they aren't in small
data section. But a definition in small data section overrides a common
symbol, which still binds lcoally, and turns a reference to common symbol
to reference to small data section. Even if ia64_in_small_data_p returns
true on common symbols, sdata_symbolic_operand must return false on common
symbols. Common symbols are assumed to be placed in small data section,
but are accessed as if they are in normal data section so that they won't
cause any relocation overflow.
PR target/65064
* config/ia64/predicates.md (sdata_symbolic_operand): Return false
for common symbols.
From-SVN: r220792
Jakub Jelinek [Wed, 18 Feb 2015 16:38:29 +0000 (17:38 +0100)]
t-intelmic (mkoffload.o): Remove dependency on insn-modes.h.
* config/i386/t-intelmic (mkoffload.o): Remove dependency on
insn-modes.h.
(ALL_HOST_OBJS): Add mkoffload.o.
* config/nvptx/t-nvptx (ALL_HOST_OBJS): Likewise.
From-SVN: r220791
Jan Hubicka [Wed, 18 Feb 2015 16:12:52 +0000 (17:12 +0100)]
ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.
* ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.
(compare_virtual_tables): Be smarter about skipping typeinfos;
do sane output on virtual table table mismatch.
(warn_odr): Be ready for forward declarations of enums;
output sane info on base mismatch and virtual table mismatch.
(add_type_duplicate): Fix code choosing prevailing type; do not ICE
when only one type is polymorphic.
(get_odr_type): Fix hashtable corruption.
(dump_odr_type): Dump mangled names.
From-SVN: r220790
Ilya Tocar [Wed, 18 Feb 2015 13:33:43 +0000 (13:33 +0000)]
target.c (gomp_load_plugin_for_device): Use const char * instead of char * for variables holding dlerror return values.
libgomp/
* target.c (gomp_load_plugin_for_device): Use const char * instead of
char * for variables holding dlerror return values.
(DLSYM_OPT): Ditto.
From-SVN: r220789
Richard Biener [Wed, 18 Feb 2015 13:08:58 +0000 (13:08 +0000)]
re PR tree-optimization/65063 (gcc.dg/vect/vect-double-reduc-6.c FAILs with -O3 -fno-tree-loop-ivcanon -fno-tree-vectorize)
2015-02-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/65063
* tree-predcom.c (determine_unroll_factor): Return 1 if we
have replaced looparound PHIs.
* gcc.dg/pr65063.c: New testcase.
From-SVN: r220788
Martin Liska [Wed, 18 Feb 2015 12:12:50 +0000 (13:12 +0100)]
Add checking macro within lto_streamer_init.
* lto-streamer.c (lto_streamer_init): Encapsulate
streamer_check_handled_ts_structures with checking macro.
From-SVN: r220787
Jakub Jelinek [Wed, 18 Feb 2015 11:37:02 +0000 (12:37 +0100)]
re PR ipa/65087 (r220742 causes: ICE: in ipcp_verify_propagated_values, at ipa-cp.c:1057)
PR ipa/65087
* cgraphclones.c (cgraph_node::create_virtual_clone): Only copy
section if !implicit_section.
(cgraph_node::create_version_clone_with_body): Likewise.
* trans-mem.c (ipa_tm_create_version): Likewise.
From-SVN: r220786
Richard Biener [Wed, 18 Feb 2015 09:48:57 +0000 (09:48 +0000)]
re PR tree-optimization/62217 (DOM confuses complete unrolling which in turn causes VRP to warn)
2015-02-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/62217
* tree-ssa-dom.c (cprop_operand): Avoid propagating copies
into BIVs.
* gcc.dg/tree-ssa/cunroll-11.c: New testcase.
From-SVN: r220785
Marek Polacek [Wed, 18 Feb 2015 09:46:59 +0000 (09:46 +0000)]
re PR sanitizer/65081 (-fsanitize=object-size fails with simple pointer arithm)
PR sanitizer/65081
* ubsan.c (OBJSZ_MAX_OFFSET): Define.
(ubsan_expand_objsize_ifn): Don't emit run-time check if the offset
is in range [-16K, -1]. Don't issue run-time error if
(ptr > ptr + offset).
* c-c++-common/ubsan/pr65081.c: New test.
From-SVN: r220784
Thomas Schwinge [Wed, 18 Feb 2015 08:31:18 +0000 (09:31 +0100)]
Begin documenting the nvptx backend.
gcc/
* doc/install.texi (nvptx-*-none): New section.
* doc/invoke.texi (Nvidia PTX Options): Likewise.
* config/nvptx/nvptx.opt: Update.
From-SVN: r220783
Thomas Schwinge [Wed, 18 Feb 2015 08:17:32 +0000 (09:17 +0100)]
nvptx mkoffload: For non-installed testing, look in all COMPILER_PATHs for GCC_INSTALL_NAME.
gcc/
* config/nvptx/mkoffload.c (parse_env_var, free_array_of_ptrs)
(access_check): New functions, copied from
config/i386/intelmic-mkoffload.c.
(main): For non-installed testing, look in all COMPILER_PATHs for
GCC_INSTALL_NAME.
From-SVN: r220782
Thomas Schwinge [Wed, 18 Feb 2015 08:01:03 +0000 (09:01 +0100)]
nvptx-none: Disable the lto-plugin.
config/
* elf.m4 (ACX_ELF_TARGET_IFELSE): nvptx-*-none isn't ELF.
/
* configure: Regenerate.
From-SVN: r220781
Thomas Schwinge [Wed, 18 Feb 2015 07:45:42 +0000 (08:45 +0100)]
nvptx-none: Define empty GOMP_SELF_SPECS.
Otherwise, offloading with -fopenacc or -fopenmp active will run into:
x86_64-unknown-linux-gnu-accel-nvptx-none-gcc: error: unrecognized command line option '-pthread'
gcc/
* config/nvptx/nvptx.h (GOMP_SELF_SPECS): Define macro.
From-SVN: r220780
Andrew Pinski [Wed, 18 Feb 2015 04:40:10 +0000 (04:40 +0000)]
aarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.
* config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.
Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
From-SVN: r220779
GCC Administrator [Wed, 18 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220778
Jan Hubicka [Tue, 17 Feb 2015 21:57:53 +0000 (22:57 +0100)]
ipa-visibility.c (function_and_variable_visibility): Only check locality if node is not already local.
* ipa-visibility.c (function_and_variable_visibility): Only
check locality if node is not already local.
* ipa-inline.c (want_inline_function_to_all_callers_p): Use
call_for_symbol_and_aliases instead of
call_for_symbol_thunks_and_aliases.
(ipa_inline): Likewise.
* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
first walk aliases.
* ipa.c (symbol_table::remove_unreachable_nodes): Use
call_for_symbol_and_aliases.
* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
(ipa_propagate_frequency_1): Use it; use opt_for_fn
(ipa_propagate_frequency): Update.
(ipa_profile): Add opt_for_fn gueards.
From-SVN: r220775
Oleg Endo [Tue, 17 Feb 2015 21:38:12 +0000 (21:38 +0000)]
sh.opt (mcbranch-force-delay-slot): New option.
gcc/
* config/sh/sh.opt (mcbranch-force-delay-slot): New option.
* doc/invoke.texi (SH options): Document it.
* config/sh/sh.c (sh_insn_length_adjustment): Check
TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E.
gcc/testsuite/
* gcc.target/sh/sh.exp (check_effective_target_sh1): New.
* gcc.target/sh/force-cbranch-delay-slot.c: New.
From-SVN: r220774
H.J. Lu [Tue, 17 Feb 2015 21:25:56 +0000 (21:25 +0000)]
Add -fipa-cp-alignment
This patch adds -fipa-cp-alignment to provide a way to enable/disable
alignment discovery and propagation in IPA-CP.
gcc/
* common.opt (fipa-cp-alignment): New.
* ipa-cp.c (ipcp_store_alignment_results): Check
flag_ipa_cp_alignment.
* opts.c (default_options_table): Enable -fipa-cp-alignment for
-O2.
(enable_fdo_optimizations): Set x_flag_ipa_cp_alignment.
* doc/invoke.texi: Document -fipa-cp-alignment.
gcc/testsuite/
* gcc.dg/ipa/propalign-3.c: New test.
From-SVN: r220773
Oleg Endo [Tue, 17 Feb 2015 21:08:24 +0000 (21:08 +0000)]
re PR target/64793 ([SH] missed delay slot)
gcc/
PR target/64793
* config/sh/sh.md (cbranch define_delay): Set annulled true branch insn
to nil. Adjust comments.
gcc/testsuite/
PR target/64793
* gcc.target/sh/pr64793.c: New.
* gcc.target/sh/pr51244-20-sh2a.c: Adjust expected cmp/gt insn count.
From-SVN: r220772
Jan Hubicka [Tue, 17 Feb 2015 20:58:43 +0000 (21:58 +0100)]
ipa-visibility.c (function_and_variable_visibility): Only check locality if node is not already local.
* ipa-visibility.c (function_and_variable_visibility): Only
check locality if node is not already local.
* ipa-inline.c (want_inline_function_to_all_callers_p): Use
call_for_symbol_and_aliases instead of
call_for_symbol_thunks_and_aliases.
(ipa_inline): Likewise.
* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
first walk aliases.
* ipa.c (symbol_table::remove_unreachable_nodes): Use
call_for_symbol_and_aliases.
* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
(ipa_propagate_frequency_1): Use it; use opt_for_fn
(ipa_propagate_frequency): Update.
(ipa_profile): Add opt_for_fn guards.
From-SVN: r220771
Thomas Schwinge [Tue, 17 Feb 2015 18:24:07 +0000 (19:24 +0100)]
libgomp: Make GOMP_PLUGIN_debug actually work...
libgomp/
* libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
From-SVN: r220770
Thomas Schwinge [Tue, 17 Feb 2015 18:13:32 +0000 (19:13 +0100)]
nvptx mkoffload: Fix logic error in skipping of "strange" tokens.
gcc/
* config/nvptx/mkoffload.c (parse_file): Fix logic error in
skipping of "strange" tokens.
From-SVN: r220769
Thomas Schwinge [Tue, 17 Feb 2015 18:05:24 +0000 (19:05 +0100)]
libgomp: Make nvptx helper routines self-contained.
libgomp/
* oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
GOACC_ctaid, and GOACC_nctaid routines.
Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r220768
Sandra Loosemore [Tue, 17 Feb 2015 17:39:22 +0000 (12:39 -0500)]
bpabi.S (test_div_by_zero): Make label names consistent between thumb2 and arm mode cases.
2015-02-17 Sandra Loosemore <sandra@codesourcery.com>
libgcc/
* config/arm/bpabi.S (test_div_by_zero): Make label names
consistent between thumb2 and arm mode cases. Separate the
signed comparison on the high word of the numerator from the
unsigned comparison on the low word.
* config/arm/bpabi-v6m.S (test_div_by_zero): Similarly separate
signed comparison.
gcc/testsuite/
* gcc.target/arm/divzero.c: New test case.
From-SVN: r220765
Joseph Myers [Tue, 17 Feb 2015 16:19:56 +0000 (16:19 +0000)]
Avoid dependence on libc headers in nvptx realloc.
* config/nvptx/realloc.c: Include <stddef.h> instead of <stdlib.h>
and <string.h>.
(__nvptx_realloc): Call __builtin_memcpy instead of memcpy.
From-SVN: r220764
Jeff Law [Tue, 17 Feb 2015 15:32:05 +0000 (08:32 -0700)]
tree-vrp.c (identify_jump_threads): Use last_stmt.
* tree-vrp.c (identify_jump_threads): Use last_stmt. Remove
obsolete comment.
From-SVN: r220763
Daniel Richard G. [Tue, 17 Feb 2015 14:45:48 +0000 (14:45 +0000)]
Change stdlib.h base, not inttypes.h
From-SVN: r220761
Rüdiger Sonderfeld [Tue, 17 Feb 2015 14:25:48 +0000 (14:25 +0000)]
char32_t.cc: New.
2015-02-17 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
Jonathan Wakely <jwakely@redhat.com>
* testsuite/22_locale/codecvt/char32_t.cc: New.
Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r220760
Alan Lawrence [Tue, 17 Feb 2015 14:08:59 +0000 (14:08 +0000)]
Correct ChangeLog entry (2015-02-04)
From-SVN: r220759
Jonathan Wakely [Tue, 17 Feb 2015 12:44:26 +0000 (12:44 +0000)]
re PR libstdc++/65085 (Move-assigned empty string corrupt with -D_GLIBCXX_USE_CXX11_ABI=1)
PR libstdc++/65085
* include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
empty string gets null-terminated.
* testsuite/21_strings/basic_string/cons/char/65085.cc: New.
From-SVN: r220758
Tom de Vries [Tue, 17 Feb 2015 11:42:26 +0000 (11:42 +0000)]
Add gcc.target/x86_64/abi/callabi/vaarg-6.c
2015-02-17 Tom de Vries <tom@codesourcery.com>
* gcc.target/x86_64/abi/callabi/vaarg-6.c: New test.
From-SVN: r220757
James Greenhalgh [Tue, 17 Feb 2015 09:19:33 +0000 (09:19 +0000)]
[Haifa Scheduler] Fix latent bug in macro-fusion/instruction grouping
gcc/
* haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
as forcing a HARD_DEP between instructions, thereby
disallowing rewriting to break dependencies.
From-SVN: r220751
Jan Hubicka [Tue, 17 Feb 2015 08:58:37 +0000 (09:58 +0100)]
symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
* symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
* lto-cgraph.c (lto_output_varpool_node): Do not keep definition of
variables in boundary that have no inlitalizer encoded and are
not aliases.
* varasm.c (default_binds_local_p_2): External definitions do not
count as definitions here.
From-SVN: r220749
Paolo Carlini [Tue, 17 Feb 2015 08:25:30 +0000 (08:25 +0000)]
re PR c++/65075 (constexpr regression)
PR c++/65075
* constexpr.c (check_constexpr_bind_expr_vars): Allow
implicit typedefs for lambda types.
* g++.dg/cpp0x/pr65075.C: New test.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r220748
GCC Administrator [Tue, 17 Feb 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220747
David Edelsohn [Mon, 16 Feb 2015 23:03:33 +0000 (23:03 +0000)]
re PR target/65058 (AIX: missing extern decorations "[DS]" for functions and "[UA]" for variables)
PR target/65058
* gcc.target/powerpc/pr65058.c: New test.
From-SVN: r220744
Jeff Law [Mon, 16 Feb 2015 20:56:55 +0000 (13:56 -0700)]
re PR tree-optimization/64823 (false "may be used uninitialized", missed jump threading)
PR tree-optimization/64823
* tree-vrp.c (identify_jump_threads): Handle blocks with no real
statements.
* tree-ssa-threadedge.c (potentially_threadable_block): Allow
threading through blocks with PHIs, but no statements.
(thread_through_normal_block): Distinguish between blocks where
we did not process all the statements and blocks with no statements.
PR tree-optimization/64823
* gcc.dg/uninit-20.c: New test.
From-SVN: r220743
Jakub Jelinek [Mon, 16 Feb 2015 19:22:57 +0000 (20:22 +0100)]
re PR ipa/64963 (IPA Cloning/Splitting does not copy function section attributes resulting in kernel miscompilation)
PR ipa/64963
* cgraphclones.c (cgraph_node::create_virtual_clone): Copy
section if not linkonce. Fix up formatting.
(cgraph_node::create_version_clone_with_body): Copy section.
* trans-mem.c (ipa_tm_create_version): Likewise.
* gcc.dg/ipa/ipa-clone-1.c: New test.
Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
From-SVN: r220742
Richard Biener [Mon, 16 Feb 2015 18:15:19 +0000 (18:15 +0000)]
re PR tree-optimization/65077 (memcpy generates incorrect code with floating point numbers and -O1)
2015-02-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/65077
* tree-ssa-structalias.c (get_constraint_for_1): Handle
IMAGPART_EXPR, REALPART_EXPR and BIT_FIELD_REF.
(find_func_aliases): Allow float values to carry pointers again.
* gcc.dg/torture/pr65077.c: New testcase.
From-SVN: r220741
Alex Velenko [Mon, 16 Feb 2015 18:12:10 +0000 (18:12 +0000)]
atomic-op-consume.c (scan-assember-times): Directive adjusted to scan for ldaxr.
gcc/testsuite/
* gcc.target/aarch64/atomic-op-consume.c (scan-assember-times):
Directive adjusted to scan for ldaxr.
* gcc.target/arm/atomic-op-consume.c (scan-assember-times): Directive
adjusted to scan for ldaex.
From-SVN: r220740
Paolo Carlini [Mon, 16 Feb 2015 17:48:08 +0000 (17:48 +0000)]
re PR c++/65080 (constexpr-ness lost by using alias in definition)
2015-02-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/65080
* g++.dg/cpp0x/constexpr-65080.C: New.
From-SVN: r220739
James Greenhalgh [Mon, 16 Feb 2015 16:28:16 +0000 (16:28 +0000)]
[Patch docs obvious] install.texi: Put aarch64 back in alphabetical order, add link
gcc/
* doc/install.texi (Specific): Reorder targets list to put
aarch64 in alphabetical order. Add a link to aarch64*-*-*
from the top menu.
From-SVN: r220738
David Edelsohn [Mon, 16 Feb 2015 15:33:09 +0000 (10:33 -0500)]
[multiple changes]
2015-02-16 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
David Edelsohn <dje.gcc@gmail.com>
PR target/65058
* config/rs6000/rs6000.c (rs6000_output_symbol_ref): Append storage
mapping class to external variable or function reference.
* config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Do not append storage
mapping class.
2015-02-16 David Eelsohn <dje.gcc@gmail.com>
PR target/53348
* config/rs6000/rs6000.c (rs6000_declare_alias): Only use
ASM_WEAKEN_DECL if defined.
From-SVN: r220737
Daniel Richard G. [Mon, 16 Feb 2015 15:19:20 +0000 (15:19 +0000)]
Daniel Richard G.
Daniel Richard G. <skunk@iskunk.org>
PR bootstrap/48009
PR bootstrap/53348
* inclhack.def (aix_strtof_const): New fix.
* fixincl.x: Regenerate.
* tests/base/inttypes.h: New test.
From-SVN: r220736
Richard Biener [Mon, 16 Feb 2015 14:53:23 +0000 (14:53 +0000)]
re PR lto/65015 (LTO produces randomly ordered debug information)
2015-02-16 Richard Biener <rguenther@suse.de>
PR lto/65015
* varasm.c (default_file_start): For LTO produced units
emit <artificial> as file directive.
From-SVN: r220735
Richard Biener [Mon, 16 Feb 2015 14:52:14 +0000 (14:52 +0000)]
re PR tree-optimization/63593 (ICE: verify_gimple failed: incompatible types in PHI argument 0 with -O3 -fno-tree-vectorize)
2015-02-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/63593
* tree-predcom.c (execute_pred_commoning_chain): Delay removing
stmts and releasing SSA names until...
(execute_pred_commoning): ... after processing all chains.
* gcc.dg/pr63593.c: New testcase.
From-SVN: r220734
Jan Hubicka [Mon, 16 Feb 2015 12:28:40 +0000 (13:28 +0100)]
re PR ipa/65059 (Chrome LTO: lto1: internal compiler error: in ipa_comdats, at ipa-comdats.c:360)
Fix PR ipa/65059.
PR ipa/65059
* ipa-comdats.c (ipa_comdats): Do not categorize thunks to
external functions.
From-SVN: r220733
Marek Polacek [Mon, 16 Feb 2015 11:16:33 +0000 (11:16 +0000)]
re PR c/65066 (ICE: Segmentation fault with -Wformat=2)
PR c/65066
* c-format.c (check_format_types): Handle null param.
* gcc.dg/pr65066.c: New test.
From-SVN: r220732
Ilya Enkovich [Mon, 16 Feb 2015 10:03:26 +0000 (10:03 +0000)]
pr65002.C: Move ...
gcc/testsuite/
* gcc.dg/pr65002.C: Move ...
* g++.dg/ipa/pr65002.C: ... here.
From-SVN: r220731
Sandra Loosemore [Mon, 16 Feb 2015 03:47:54 +0000 (22:47 -0500)]
bugreport.texi: Adjust section titles throughout the file to use "Title Case".
2015-02-15 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/bugreport.texi: Adjust section titles throughout the file
to use "Title Case".
* doc/extend.texi: Likewise.
* doc/gcov.texi: Likewise.
* doc/implement-c.texi: Likewise.
* doc/implement-cxx.texi: Likewise.
* doc/invoke.texi: Likewise.
* doc/objc.texi: Likewise.
* doc/standards.texi: Likewise.
* doc/trouble.texi: Likewise.
From-SVN: r220722
GCC Administrator [Mon, 16 Feb 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220721
Jan Hubicka [Sun, 15 Feb 2015 22:30:16 +0000 (23:30 +0100)]
cgraph.h (symtab_node::has_aliases_p): Simplify.
* cgraph.h (symtab_node::has_aliases_p): Simplify.
(symtab_node::call_for_symbol_and_aliases): Use has_aliases_p
* tree.c (lookup_binfo_at_offset): Make static.
(get_binfo_at_offset): Do not shadow offset; add explanatory
comment.
From-SVN: r220718
John David Anglin [Sun, 15 Feb 2015 15:18:47 +0000 (15:18 +0000)]
pa.c (pa_secondary_reload): Request a secondary reload for all floading point loads and stores except those...
* config/pa/pa.c (pa_secondary_reload): Request a secondary reload
for all floading point loads and stores except those using a register
index address.
* config/pa/pa.md: Add new patterns to load a lo_sum DLT operand
to a register.
From-SVN: r220716
David Edelsohn [Sun, 15 Feb 2015 04:01:29 +0000 (23:01 -0500)]
pr64205.c: Skip on AIX.
* gcc.target/powerpc/pr64205.c: Skip on AIX.
* gcc.target/powerpc/pr64505.c: Skip on AIX.
* gcc.dg/torture/builtin-noret-1.c: Ignore AIX linker warnings.
* gcc.dg/torture/builtin-noret-2.c: Ignore AIX linker warnings.
From-SVN: r220715
GCC Administrator [Sun, 15 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220714
Kaz Kojima [Sat, 14 Feb 2015 23:50:25 +0000 (23:50 +0000)]
re PR testsuite/64850 (FAIL: gfortran.dg/goacc/acc_on_device-1.f95 -O scan-rtl-dump-times expand "\\(call [^\\n]*\\"acc_on_device" 4)
PR testsuite/64850
Tweak acc_on_device* tests.
From-SVN: r220711
Jan Hubicka [Sat, 14 Feb 2015 23:46:25 +0000 (00:46 +0100)]
ipa-inline-analysis.c (growth_data): Add uninlinable field.
* ipa-inline-analysis.c (growth_data): Add uninlinable field.
(do_estimate_growth_1): Record if any uninlinable edge was seen.
(estimate_growth): Handle uninlinable edges correctly.
(check_callers): New.
(growth_likely_positive): Handle aliases correctly.
From-SVN: r220710
Jan Hubicka [Sat, 14 Feb 2015 18:42:49 +0000 (19:42 +0100)]
ipa-chkp.c: Use iterate_direct_aliases.
* ipa-chkp.c: Use iterate_direct_aliases.
* symtab.c (resolution_used_from_other_file_p): Move inline.
(symtab_node::create_reference): Fix formating.
(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
(symtab_node::iterate_reference): Move inline.
(symtab_node::iterate_referring): Move inline.
(symtab_node::iterate_direct_aliases): Move inline.
(symtab_node::used_from_object_file_p_worker): Inline into ...
(symtab_node::used_from_object_file_p): ... this one; move inline.
(symtab_node::call_for_symbol_and_aliases): Move inline;
use iterate_direct_aliases.
(symtab_node::call_for_symbol_and_aliases_1): New method.
(cgraph_node::call_for_symbol_and_aliases): Move inline;
use iterate_direct_aliases.
(cgraph_node::call_for_symbol_and_aliases_1): New method.
(varpool_node::call_for_node_and_aliases): Rename to ...
(varpool_node::call_for_symbol_and_aliases): ... this one; Move inline;
use iterate_direct_aliases.
(varpool_node::call_for_symbol_and_aliases_1): New method.
* ipa.c (ipa_single_use): Use iterate_direct_aliases.
(ipa_discover_readonly_nonaddressable_var): Update.
* ipa-devirt.c: Fix formating.
* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_and_refs_p):
Move inline.
(cgraph_node::call_for_symbol_and_aliases): Move inline.
(cgraph_node::call_for_symbol_and_aliases_1): New function..
* cgraph.h (used_from_object_file_p_worker): Remove.
(resolution_used_from_other_file_p): Move inline.
(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
(symtab_node::iterate_reference): Move inline.
(symtab_node::iterate_referring): Move inline.
(symtab_node::iterate_direct_aliases): Move inline.
(symtab_node::used_from_object_file_p_worker): Inline into ...
(symtab_node::used_from_object_file_p): Move inline.
* tree-emutls.c (ipa_lower_emutls): Update.
* varpool.c (varpool_node::call_for_symbol_and_aliases_1): New method.
(varpool_node::call_for_node_and_aliases): Remove.
From-SVN: r220709
Marek Polacek [Sat, 14 Feb 2015 11:25:19 +0000 (11:25 +0000)]
re PR c/64768 (internal compiler error: tree check: expected tree that contains ‘decl with RTL’ structure, have ‘field_decl’ in set_decl_rtl, at emit-rtl.c:1274)
PR c/64768
* c-decl.c (grokdeclarator): Set the range of a flexible array member
declared through a typedef name.
* gcc.dg/array-11.c: New test.
* gcc.dg/array-12.c: New test.
* gcc.dg/array-13.c: New test.
* gcc.dg/array-14.c: New test.
* gcc.dg/c99-flex-array-typedef-1.c: New test.
* gcc.dg/c99-flex-array-typedef-2.c: New test.
* gcc.dg/c99-flex-array-typedef-3.c: New test.
* gcc.dg/c99-flex-array-typedef-5.c: New test.
* gcc.dg/c99-flex-array-typedef-7.c: New test.
* gcc.dg/c99-flex-array-typedef-8.c: New test.
From-SVN: r220708
Jakub Jelinek [Sat, 14 Feb 2015 08:23:18 +0000 (09:23 +0100)]
re PR tree-optimization/62209 (ICE with LTO on valid code on x86_64-linux-gnu)
PR tree-optimization/62209
* tree-ssa-reassoc.c (update_range_test): If stmt is a PHI and
op == range->exp, insert seq and gimplified code after labels
instead of after the phi.
From-SVN: r220706
GCC Administrator [Sat, 14 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r220705
Paolo Carlini [Fri, 13 Feb 2015 23:57:10 +0000 (23:57 +0000)]
re PR c++/60894 (Use of redundant struct keyword in function prototype combined with using statement causes compilation error)
/cp
2015-02-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60894
* decl.c (lookup_and_check_tag): Use strip_using_decl.
/testsuite
2015-02-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60894
* g++.dg/lookup/using54.C: New.
From-SVN: r220702
Jeff Law [Fri, 13 Feb 2015 23:53:54 +0000 (16:53 -0700)]
re PR bootstrap/65060 (r220696 breaks bootstrap on Linux/x86-32)
PR bootstrap/65060
Revert my change for tree-optimization/64823.
From-SVN: r220701
Jakub Jelinek [Fri, 13 Feb 2015 23:20:31 +0000 (00:20 +0100)]
re PR tree-optimization/65053 (PostgreSQL miscompilation)
PR tree-optimization/65053
* tree-ssa-phiopt.c (value_replacement): When moving assign before
cond, either reset VR on lhs or set it to phi result VR.
* gcc.c-torture/execute/pr65053-1.c: New test.
* gcc.c-torture/execute/pr65053-2.c: New test.
From-SVN: r220700