Commit Graph

121957 Commits

Author SHA1 Message Date
Richard Biener
73db8ff1f3 re PR middle-end/56349 (ICE in create_preheader at cfgloopmanip.c:1525)
2013-02-18  Richard Biener  <rguenther@suse.de>

        PR middle-end/56349
        * gcc.dg/torture/pr56350.c: Move ...
        * gcc.dg/torture/pr56349.c: ... here.

From-SVN: r196119
2013-02-18 13:09:17 +00:00
Richard Biener
6aaf596b40 re PR tree-optimization/56350 (ICE in vectorizable_reduction, at tree-vect-loop.c:4731)
2013-02-18  Richard Biener  <rguenther@suse.de>

	PR middle-end/56350
	* cfghooks.c (merge_blocks): If we merge a latch into another
	block adjust references to it.
	* cfgloop.c (flow_loops_find): Reset latch before recomputing it.
	(verify_loop_structure): Verify that a recorded latch is in fact
	a latch.

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

From-SVN: r196118
2013-02-18 13:03:15 +00:00
Richard Biener
5e97dfb679 re PR tree-optimization/56321 (ICE:segfault in midend for -funsafe-math-optimizations -O3)
2013-02-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56321
	* tree-ssa-reassoc.c (propagate_op_to_single_use): Properly
	order SSA name release and virtual operand unlinking.

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

From-SVN: r196117
2013-02-18 12:11:47 +00:00
GCC Administrator
8fe196a207 Daily bump.
From-SVN: r196115
2013-02-18 00:18:32 +00:00
Edgar E. Iglesias
825527e8a6 Free variable local allocs at block ends.
* config/microblaze/microblaze.md (save_stack_block): Define.
   (restore_stack_block): Likewise.

From-SVN: r196110
2013-02-17 16:18:09 +00:00
Tobias Burnus
162ceab464 cacoshq.c (cacoshq): Call signbitq instead of signbit.
2013-02-17  Tobias Burnus  <burnus@net-b.de>

        * math/cacoshq.c (cacoshq): Call signbitq instead of signbit.

From-SVN: r196109
2013-02-17 13:57:51 +01:00
GCC Administrator
0965835f6c Daily bump.
From-SVN: r196107
2013-02-17 00:22:57 +00:00
Edgar E. Iglesias
debd11d9fb Add TARGET_SUPPORTS_PIC flag and check that the flag_pic = 2
* config/microblaze/linux.h (TARGET_SUPPORTS_PIC): Define as 1.
 * config/microblaze/microblaze.h (TARGET_SUPPORTS_PIC): Define as 1.
 * config/microblaze/microblaze.c (microblaze_option_override):
    Bail out early for PIC modes when target does not support PIC.
 * gcc.dg/20020312-2.c: Define MicroBlaze PIC register

From-SVN: r196104
2013-02-16 19:32:15 +00:00
Edgar E. Iglesias
8ec77be0fc microblaze.c (microblaze_asm_trampoline_template): Replace with a microblaze version.
* config/microblaze/microblaze.c (microblaze_asm_trampoline_template): 
	Replace with a microblaze version.
	(microblaze_trampoline_init): Adapt for microblaze.
	* gcc/config/microblaze/microblaze.h (TRAMPOLINE_SIZE): Adapt for 
	microblaze.

From-SVN: r196103
2013-02-16 17:42:30 +00:00
Jakub Jelinek
b41288b3a5 [asan] Fix for PR asan/56330
gcc/
	* asan.c (get_mem_refs_of_builtin_call): White space and style
	cleanup.
	(instrument_mem_region_access): Do not forget to always put
	instrumentation of the of 'base' and 'base + len' in a "if (len !=
	0) statement, even for cases where either 'base' or 'base + len'
	are not instrumented -- because they have been previously
	instrumented.  Simplify the logic by putting all the statements
	instrument 'base + len' inside a sequence, and then insert that
	sequence right before the current insertion point.  Then, to
	instrument 'base + len', just get an iterator on that statement.
	And do not forget to update the pointer to iterator the function
	received as argument.

gcc/testsuite/

	* c-c++-common/asan/no-redundant-instrumentation-4.c: New test file.
	* c-c++-common/asan/no-redundant-instrumentation-5.c: Likewise.
	* c-c++-common/asan/no-redundant-instrumentation-6.c: Likewise.
	* c-c++-common/asan/no-redundant-instrumentation-7.c: Likewise.
	* c-c++-common/asan/no-redundant-instrumentation-8.c: Likewise.
	* c-c++-common/asan/pr56330.c: Likewise.
	* c-c++-common/asan/no-redundant-instrumentation-1.c (test1):
	Ensure the size argument of __builtin_memcpy is a constant.

Co-Authored-By: Dodji Seketeli <dodji@redhat.com>

From-SVN: r196102
2013-02-16 10:32:56 +01:00
Jonathan Wakely
4d0648ac8f re PR c++/51242 ([C++11] Unable to use strongly typed enums as bit fields)
/cp
2013-02-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51242
	* decl2.c (grokbitfield): Allow scoped enumeration types.

/testsuite
2013-02-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51242
	* g++.dg/cpp0x/enum23.C: New.


Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r196100
2013-02-16 01:07:11 +00:00
GCC Administrator
7102a358e3 Daily bump.
From-SVN: r196098
2013-02-16 00:18:40 +00:00
Oleg Endo
41ad581fd6 re PR middle-end/54685 ([SH] Improve unsigned int comparison with 0x7FFFFFFF)
PR target/54685
	* gcc.target/sh/pr54685.c: Fix scanning of not insn.

From-SVN: r196092
2013-02-15 21:28:26 +00:00
Jason Merrill
9fd30fece6 re PR c++/54276 (Lambda in a Template Function Undefined Reference to local static)
PR c++/54276
	* semantics.c (finish_id_expression): Also return the identifier
	for an outer local static.

From-SVN: r196091
2013-02-15 14:22:14 -05:00
Vladimir Makarov
4791895176 re PR rtl-optimization/56348 (internal compiler error in assign_by_spills with -m32 -fPIC -msse2)
2013-02-15  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/56348
	* lra-assigns.c (reload_pseudo_compare_func): Prefer bigger pseudos.

2013-02-15  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/56348
	* gcc.target/i386/pr56348.c: New test.

From-SVN: r196090
2013-02-15 19:17:02 +00:00
Ian Lance Taylor
3ab98a471c runtime: Do not reserve huge amount of swap on 32 bit architectures.
The mmap() call which reserves the arena should have MAP_NORESERVE
flag as in typical cases this memory will never be (fully) needed.
This matters in environments which do not do Linux style memory
overcommit, such as OpenIndiana/OpenSolaris/Solaris.

The MAP_NORESERVE flag does not exist on all operating systems
(for example FreeBSD). Therefore we define it to zero value in
case it does not exist.

Fixes issue 21.

From-SVN: r196088
2013-02-15 18:55:09 +00:00
Yufeng Zhang
4dddfc74f3 configure.ac: Set libgloss_dir for the aarch64*-*-* targets.
* configure.ac: Set libgloss_dir for the aarch64*-*-* targets.
	* configure: Regenerated.

From-SVN: r196083
2013-02-15 17:45:54 +00:00
Jason Merrill
52d95c2127 re PR c++/56343 ([C++11] Destructor defaulted on first declaration has wrong implicit exception specification)
PR c++/56343
	* class.c (check_bases_and_members): Deduce noexcept after
	checking bases.

From-SVN: r196082
2013-02-15 12:19:45 -05:00
Jason Merrill
30fa2a51fa re PR c++/52026 (Constexpr Variable Appears Uninitialized in Lambda)
PR c++/52026
	* semantics.c (finish_id_expression): In a template, return
	the identifier for a constant variable.

From-SVN: r196081
2013-02-15 11:17:25 -05:00
Jason Merrill
90680f3b80 * g++.dg/cpp0x/lambda/lambda-this8.C: Don't use NULL.
From-SVN: r196080
2013-02-15 11:16:58 -05:00
Alan Modra
110207ad17 re PR target/55431 (Invalid auxv search in ppc linux-unwind code.)
PR target/55431
	* config/rs6000/linux-unwind.h (ppc_linux_aux_vector): Delete.
	(ppc_fallback_frame_state): Always set up save locations for fp
	and altivec.  Don't bother with non-callee-saved regs, r0-r13
	except for r2 on ppc64, fr0-fr13, v0-v19, vscr.

From-SVN: r196077
2013-02-16 00:23:40 +10:30
Greta Yorsh
45e4e1e958 interrupt-1.c: Fix for thumb mode.
2012-02-15  Greta Yorsh  <Greta.Yorsh@arm.com>

        * gcc.target/arm/interrupt-1.c: Fix for thumb mode.
        * gcc.target/arm/interrupt-2.c: Likewise.

From-SVN: r196076
2013-02-15 13:27:11 +00:00
Tobias Burnus
711db0a61d re PR fortran/56318 (Wrong result with MATMUL of PARAMETER)
2013-02-14  Tobias Burnus  <burnus@net-b.de>
            Mikael Morin  <mikael@gcc.gnu.org>

        PR fortran/56318
        * simplify.c (gfc_simplify_matmul): Fix result shape
        and matmul result.

2013-02-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56318
        * gcc/testsuite/gfortran.dg/matmul_9.f90: New.


Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>

From-SVN: r196075
2013-02-15 12:17:15 +01:00
Steven Bosscher
3fb7c69995 graph.c (start_graph_dump): Print dumpfile base as digraph label.
* graph.c (start_graph_dump): Print dumpfile base as digraph label.
	(clean_graph_dump_file): Pass base to start_graph_dump.

From-SVN: r196074
2013-02-15 09:30:52 +00:00
Tobias Burnus
fab99ea2d2 re PR fortran/53818 (-finit-local-zero -fno-automatic: Function result cannot have initializer)
2013-02-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53818
        * resolve.c (apply_default_init_local): Don't create an
        initializer for a result variable.

2013-02-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53818
        * gfortran.dg/init_flag_11.f90: New.

From-SVN: r196073
2013-02-15 09:50:37 +01:00
Richard Henderson
576fe41adc re PR target/55941 (Strange copy of double (in struct) to stack)
PR target/55941
        * lower-subreg.c (simple_move): Check dest mode instead of src mode.

From-SVN: r196071
2013-02-14 17:41:29 -08:00
Jason Merrill
9b2f0394a0 re PR c++/54922 ([C++11][DR 1359] constexpr constructors require initialization of all union members)
PR c++/54922
	* semantics.c (build_anon_member_initialization): New.
	(build_data_member_initialization): Use it.

From-SVN: r196070
2013-02-14 20:27:47 -05:00
Jason Merrill
b24cd3d1f8 re PR c++/55003 ([C++11] Member function pointer not working as constexpr initializer)
PR c++/55003
	* decl.c (cp_finish_decl): Force instantiation of an
	auto static data member.

From-SVN: r196069
2013-02-14 20:27:36 -05:00
Jason Merrill
d132b74aba re PR c++/55220 ([c++11] ICE when doing partial template specialization on variadic template)
PR c++/55220
	* pt.c (unify): A pack expansion that is not the last template
	argument makes the entire template argument list non-deduced.

From-SVN: r196068
2013-02-14 20:27:12 -05:00
Jason Merrill
06449b408e re PR c++/56323 ([C++11] cannot compile inherited constructor for typedef'ed base class)
PR c++/56323
	* name-lookup.c (do_class_using_decl): Handle typedefs with
	inheriting constructors.
	(push_class_level_binding_1): Allow inheriting from template
	template parameter, too.
	* pt.c (tsubst_decl) [USING_DECL]: Likewise.

From-SVN: r196067
2013-02-14 20:27:03 -05:00
Jason Merrill
5b858a6cc3 quick_exit.cc: #if out the whole test if unsupported.
* testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
	test if unsupported.

From-SVN: r196066
2013-02-14 20:26:54 -05:00
Jason Merrill
622aac0b88 re PR c++/55223 ([C++11] Default lambda expression of a templated class member)
PR c++/55223
gcc/cp/
	* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Fix handling of
	default argument scope.
	* mangle.c (write_name): Likewise.
libiberty/
	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_DEFAULT_ARG.
	(d_print_comp): Likewise.

From-SVN: r196065
2013-02-14 20:26:44 -05:00
Jason Merrill
ff9b4073cc re PR c++/55232 ([C++11] ICE with -Wunused-parameter for unused parameter pack using qualified dependent name)
PR c++/55232
	* error.c (find_typenames_r): Don't walk into a pack expansion.

From-SVN: r196064
2013-02-14 20:26:34 -05:00
GCC Administrator
9c85798a59 Daily bump.
From-SVN: r196063
2013-02-15 00:19:00 +00:00
Thomas Koenig
308f961b9b re PR fortran/56224 (gfortran -fopenmp cannot find omp_lib.h)
2013-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/56224
	* gfortran.h (gfc_add_include_path):  Add boolean argument
	for warn.
	* scanner.c (gfc_add_include_path):  Pass along warn argument
	to add_path_to_list.
	* options.c (gfc_post_options):  Add true warn argument to
	gfc_add_include_path.
	(gfc_handle_module_path_options):  Likewise.
	(gfc_handle_option): Also gfc_add_include_path for intrinsic
	modules, without warning.

From-SVN: r196058
2013-02-14 22:13:26 +00:00
Steven Bosscher
bb3accfa6f * collect2-aix.h: Define F_LOADONLY.
From-SVN: r196057
2013-02-14 20:40:55 +00:00
H.J. Lu
8afd2ed720 OFF_T: Merged from upstream r175140
PR bootstrap/56327
	* interception/interception.h (OFF_T): Merged from upstream
	r175140.

From-SVN: r196054
2013-02-14 08:54:01 -08:00
Jason Merrill
1c322ab156 * g++.dg/cpp0x/lambda/lambda-this8.C: use __builtin_abort
From-SVN: r196053
2013-02-14 08:51:21 -05:00
Rainer Emrich
7d00dca998 re PR ada/52123 (gcc bootstrap with ada fails on mingw target)
2013-02-14  Rainer Emrich  <rainer@emrich-ebersheim.de>

        PR target/52123
        * tracebak.c: Cast from pointer via FARPROC.

From-SVN: r196051
2013-02-14 14:04:10 +01:00
Richard Biener
03143140ad re PR lto/50494 (gcc.dg/vect/vect-reduc-2char.c fails spuriously on ppc with -flto)
2013-02-14  Richard Biener  <rguenther@suse.de>

	PR lto/50494
	* varasm.c (output_constant_def_1): Get the decl representing
	the constant as argument.
	(output_constant_def): Wrap output_constant_def_1.
	(make_decl_rtl): Use output_constant_def_1 with the decl
	representing the constant.
	(build_constant_desc): Optionally re-use a decl already
	representing the constant.
	(tree_output_constant_def): Adjust.

From-SVN: r196050
2013-02-14 12:24:12 +00:00
Rainer Orth
f0e1304467 Allow for more whitespace in gcc.dg/debug/dwarf2/pr53948.c
* gcc.dg/debug/dwarf2/pr53948.c: Allow for more whitespace.

From-SVN: r196049
2013-02-14 11:45:01 +00:00
Rainer Orth
1fc53de2f5 Fix gcc.dg/debug/dwarf2/pr53948.c with Sun as
* gcc.dg/debug/dwarf2/pr53948.c: Allow for / and ! as comment
	characters.

From-SVN: r196048
2013-02-14 09:59:30 +00:00
Tobias Burnus
431e468591 revert: [multiple changes]
2013-02-14  Paul Thomas  <pault@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR testsuite/56138
        * trans-decl.c (gfc_get_symbol_decl): Fix deferred-length
        results for functions without extra result variable.

        Revert:
        2013-01-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56138
        * trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length
        results for functions without extra result variable.

2013-02-14  Dominique d'Humieres  <dominiq@lps.ens.fr>
            Tobias Burnus  <burnus@net-b.de>

        PR testsuite/56138
        * gfortran.dg/allocatable_function_7.f90: New.

From-SVN: r196047
2013-02-14 10:37:53 +01:00
Jakub Jelinek
3b0c732405 dejagnu-gtest.h: Add multiple inclusion guards.
* g++.dg/asan/dejagnu-gtest.h: Add multiple inclusion guards.
	* asan_globals_test-wrapper.cc: New file.
	* g++.dg/asan/asan_test.C: Use asan_globals_test-wrapper.cc
	instead of asan_globals_test.cc as dg-additional-sources.
	Include asan_mem_test.cc, asan_str_test.cc and asan_oob_test.cc.
	* g++.dg/asan/asan_test_utils.h: Synced from upstream.  Include
	"sanitizer_test_utils.h" instead of
	"sanitizer_common/tests/sanitizer_test_utils.h".
	* g++.dg/asan/asan_str_test.cc: New file, synced from upstream.
	* g++.dg/asan/asan_mem_test.cc: New file, synced from upstream.
	* g++.dg/asan/asan_oob_test.cc: New file, synced from upstream.
	* g++.dg/asan/asan_globals_test.cc: Synced from upstream.
	* g++.dg/asan/asan_test.cc: Synced from upstream.
	* g++.dg/asan/sanitizer_test_utils.h: New file, synced from upstream.

From-SVN: r196045
2013-02-14 09:40:13 +01:00
Dodji Seketeli
8fb067263b [asan] Fix a thinko leading to a crash
It appeared that in my previous patch, a stupid thinko can lead to a
crash when instrumenting some builtin functionsK.  Fixed thus.

Bootstrapped and tested against trunk on x86_64-unknown-linux-gnu.

gcc/
	* asan.c (instrument_builtin_call):  Really put the length of the
	second source argument into src1_len.

gcc/testsuite/

	* c-c++-common/asan/memcmp-2.c: New test.

From-SVN: r196044
2013-02-14 05:37:56 +01:00
Jason Merrill
28d5c77761 re PR c++/55670 ([C++11] This isn't a pure virtual method.)
PR c++/55670
	* parser.c (cp_parser_member_declaration): Check the declarator
	form when detecting a function declaration via typedef.

From-SVN: r196043
2013-02-13 23:31:03 -05:00
Jason Merrill
e75e98f270 re PR c++/55680 ([C++11] Member specialization with lambda is rejected)
PR c++/55680
	* pt.c (maybe_process_partial_specialization): A lambda
	isn't what's being specialized.

From-SVN: r196042
2013-02-13 23:30:26 -05:00
Ed Smith-Rowland
561f7fc72c re PR c++/55582 ([C++11] Unable to define string user-defined literal without leading underscore.)
gcc/libcpp/

2013-02-13  Ed Smith-Rowland  <3dw4rd@verizon.net>

	PR c++/55582
	* libcpp/lex.c (lex_raw_string): Allow string literal with suffix
	beginning with 's' to be parsed as a C++11 user-defined literal.


gcc/testsuite/

2013-02-13  Ed Smith-Rowland  <3dw4rd@verizon.net>

	PR c++/55582
	* g++.dg/cpp0x/udlit-string-literal.h: New.
	* g++.dg/cpp0x/udlit-string-literal.C: New.

From-SVN: r196041
2013-02-14 02:55:42 +00:00
GCC Administrator
94504fd484 Daily bump.
From-SVN: r196039
2013-02-14 00:19:07 +00:00
Marc Glisse
1c259e8b49 re PR libstdc++/56111 ({float,double,long double} complex not accepted anymore)
2013-02-13  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/56111
	* include/std/complex (complex): Undefine.
	* include/c_compatibility/complex.h (complex): Only undefine if
	<complex> has been included.
	* testsuite/26_numerics/complex/56111.cc: New testcase.

From-SVN: r196034
2013-02-13 21:58:53 +00:00