GCC Administrator
0dcd5f9db1
Daily bump.
...
From-SVN: r175678
2011-06-30 00:18:02 +00:00
Jason Merrill
1f65a8c8e5
re PR c++/49216 ([C++0x] ICE on compiling new-expression with braced-init-list for arrays)
...
PR c++/49216
* init.c (build_new_1): Pass {} down to build_vec_init.
(build_vec_init): Handle it.
From-SVN: r175674
2011-06-29 18:28:15 -04:00
Jason Merrill
417ae18714
DR 1207 PR c++/49003
...
DR 1207
PR c++/49003
* cp-tree.h (struct saved_scope): Add x_current_class_ptr,
x_current_class_ref.
(current_class_ptr, current_class_ref): Use them.
* decl.c (build_this_parm): Handle getting the class type.
* parser.c (cp_parser_late_return_type_opt): Set up 'this'
for use within the trailing return type.
From-SVN: r175671
2011-06-29 17:19:31 -04:00
Jason Merrill
3fe9889732
pt.c (tsubst_decl): In unevaluated operand, don't tsubst DECL_INITIAL unless our type use auto.
...
* pt.c (tsubst_decl) [VAR_DECL]: In unevaluated operand,
don't tsubst DECL_INITIAL unless our type use auto.
From-SVN: r175670
2011-06-29 17:19:22 -04:00
François Dumont
4c2d93dbfa
set.h, [...]: Remove base class default constructor calls.
...
2011-06-29 François Dumont <francois.cppdevs@free.fr>
* include/debug/set.h, unordered_map, multiset.h, forward_list,
unordered_set, vector, deque, string, list, multimap.h: Remove base
class default constructor calls.
* include/debug/map.h: Likewise and cleanup several redefinition of
base iterator typedef.
From-SVN: r175665
2011-06-29 20:11:50 +00:00
Changpeng Fang
5c0d88e64a
Auto-vectorizer generates 128-bit AVX insns by default for bdver1.
...
* config/i386/i386.opt (mprefer-avx128): Redefine the flag as a Mask option.
* config/i386/i386.h (ix86_tune_indices): Add X86_TUNE_AVX128_OPTIMAL entry.
(TARGET_AVX128_OPTIMAL): New definition.
* config/i386/i386.c (initial_ix86_tune_features): Initialize
X86_TUNE_AVX128_OPTIMAL entry.
(ix86_option_override_internal): Enable the generation
of the 128-bit instructions when TARGET_AVX128_OPTIMAL is set.
(ix86_preferred_simd_mode): Use TARGET_PREFER_AVX128.
(ix86_autovectorize_vector_sizes): Use TARGET_PREFER_AVX128.
From-SVN: r175661
2011-06-29 17:53:49 +00:00
Jason Merrill
55d80bc439
re PR c++/49272 (FAIL: g++.old-deja/g++.jason/rfg10.C (test for errors, line 11))
...
PR c++/49272
* g++.old-deja/g++.jason/rfg10.C: Accept other overflow error too.
From-SVN: r175659
2011-06-29 13:38:53 -04:00
Jason Merrill
11324716c1
re PR c++/49520 ([C++0x] using-declaration and operator&& confuses constexpr)
...
PR c++/49520
* semantics.c (constexpr_fn_retval): Handle CLEANUP_POINT_EXPR here.
(massage_constexpr_body): Not here.
From-SVN: r175658
2011-06-29 13:15:16 -04:00
Jason Merrill
40d55020a3
re PR c++/49554 ([C++0x] lambda capture causes "cannot call member function ... without object")
...
PR c++/49554
* semantics.c (lambda_proxy_type): New.
(build_capture_proxy): Use it.
* cp-tree.h (DECLTYPE_FOR_LAMBDA_PROXY): New.
* pt.c (tsubst) [DECLTYPE_TYPE]: Use them.
From-SVN: r175657
2011-06-29 13:15:06 -04:00
Ulrich Weigand
de95483d1e
re PR rtl-optimization/49114 ([x32] Reload failed to handle (set reg:X (plus:X (subreg:X (reg:Y) 0) (const_int))))
...
PR rtl-optimization/49114
* reload.c (push_reload): Define in_subreg_loc and out_subreg_loc
only if LIMIT_RELOAD_CLASS to avoid -Werror build breaks.
From-SVN: r175652
2011-06-29 16:19:08 +00:00
Eric Botcazou
931050d044
re PR tree-optimization/49539 (ICE building gnattools)
...
PR tree-optimization/49539
* tree-ssa-forwprop.c (can_propagate_from): Check for abnormal SSA
names by means of stmt_references_abnormal_ssa_name.
(associate_plusminus): Call can_propagate_from before propagating
from definition statements.
(ssa_forward_propagate_and_combine): Remove superfluous newline.
From-SVN: r175650
2011-06-29 16:02:56 +00:00
Jason Merrill
f732fa7b6c
re PR c++/45923 (constexpr diagnostics, more more)
...
PR c++/45923
* class.c (explain_non_literal_class): New.
(finalize_literal_type_property): Call it.
* cp-tree.h: Declare it.
* semantics.c (ensure_literal_type_for_constexpr_object): Call it.
(is_valid_constexpr_fn): Likewise.
(massage_constexpr_body): Split out from...
(register_constexpr_fundef): ...here.
(is_instantiation_of_constexpr): New.
(expand_or_defer_fn_1): Leave DECL_SAVED_TREE alone in that case.
(explain_invalid_constexpr_fn): New.
(cxx_eval_call_expression): Call it.
(potential_constant_expression_1): Likewise. Avoid redundant errors.
* method.c (process_subob_fn): Diagnose non-constexpr.
(walk_field_subobs): Likewise.
(synthesized_method_walk): Don't shortcut if we want diagnostics.
(explain_implicit_non_constexpr): New.
(defaulted_late_check): Use it.
* call.c (build_cxx_call): Remember location.
From-SVN: r175646
2011-06-29 10:34:58 -04:00
Jason Merrill
874d29e5be
method.c (maybe_explain_implicit_delete): Use pointer_set instead of htab.
...
* method.c (maybe_explain_implicit_delete): Use pointer_set
instead of htab.
From-SVN: r175645
2011-06-29 10:34:47 -04:00
Jason Merrill
b198484e89
class.c (finalize_literal_type_property): Update conditions.
...
* class.c (finalize_literal_type_property): Update conditions.
* method.c (defaulted_late_check): Set TYPE_HAS_CONSTEXPR_CTOR.
From-SVN: r175644
2011-06-29 10:34:39 -04:00
Jason Merrill
1f2911476d
tree.c (build_vec_init_expr): Don't add TARGET_EXPR.
...
* tree.c (build_vec_init_expr): Don't add TARGET_EXPR.
* typeck2.c (digest_init_r): Handle VEC_INIT_EXPR.
* semantics.c (cxx_eval_vec_init_1): Correct type.
From-SVN: r175643
2011-06-29 10:34:22 -04:00
Richard Guenther
dfedbe4055
invoke.texi: Document -scev dump modifier.
...
2011-06-29 Richard Guenther <rguenther@suse.de>
* doc/invoke.texi: Document -scev dump modifier.
* tree-pass.h (TDF_SCEV): New dump flag.
* tree-dump.c (dump_option_value_in): Add scev.
* tree-chrec.c: Replace all TDF_DETAILS checks with TDF_SCEV.
* tree-scalar-evolution.c: Likewise.
* gcc.dg/tree-ssa/loop-17.c: Adjust.
From-SVN: r175642
2011-06-29 14:29:22 +00:00
Nathan Sidwell
3a86cfeb42
unwind-arm.c (enum __cxa_type_match_result): New.
...
gcc/
* config/arm/unwind-arm.c (enum __cxa_type_match_result): New.
(cxa_type_match): Correct declaration.
(__gnu_unwind_pr_common): Reconstruct
additional indirection when __cxa_type_match returns
succeeded_with_ptr_to_base.
libstdc++/
* libsupc++/eh_arm.c (__cxa_type_match): Construct address of
thrown object here. Return succeded_with_ptr_to_base for all
pointer cases.
From-SVN: r175641
2011-06-29 14:18:48 +00:00
Jason Merrill
7b37a0c548
init.c (build_value_init): Decide whether or not to zero-initialize based on user-providedness of default...
...
* init.c (build_value_init): Decide whether or not to zero-initialize
based on user-providedness of default ctor, not any ctor.
(build_value_init_noctor): Adjust assert.
From-SVN: r175640
2011-06-29 10:09:03 -04:00
Jason Merrill
2061820e0d
DR 990
...
DR 990
* call.c (convert_like_real) [ck_user]: Handle value-initialization.
(build_new_method_call_1): Likewise.
* init.c (expand_default_init): Handle direct list-initialization
of aggregates.
From-SVN: r175639
2011-06-29 10:08:55 -04:00
Rainer Orth
902233e09c
cls_double_va.c: Move PR number to comment.
...
* testsuite/libffi.call/cls_double_va.c: Move PR number to comment.
* testsuite/libffi.call/cls_longdouble_va.c: Likewise.
From-SVN: r175632
2011-06-29 12:47:56 +00:00
Ulrich Weigand
f3678bfb50
re PR rtl-optimization/49114 ([x32] Reload failed to handle (set reg:X (plus:X (subreg:X (reg:Y) 0) (const_int))))
...
PR rtl-optimization/49114
* reload.c (struct replacement): Remove SUBREG_LOC member.
(push_reload): Do not set it.
(push_replacement): Likewise.
(subst_reload): Remove dead code.
(copy_replacements): Remove assertion.
(copy_replacements_1): Do not handle SUBREG_LOC.
(move_replacements): Likewise.
(find_replacement): Remove dead code. Use reload_adjust_reg_for_mode.
Detect subregs via recursive descent instead of via SUBREG_LOC.
From-SVN: r175631
2011-06-29 12:15:08 +00:00
Georg-Johann Lay
433ba0a57b
avr.c (avr_encode_section_info): Dispatch to default_encode_section_info.
...
* config/avr/avr.c (avr_encode_section_info): Dispatch to
default_encode_section_info.
From-SVN: r175630
2011-06-29 11:20:06 +00:00
Georg-Johann Lay
d17fc17507
avr.c (avr_encode_section_info): Dispatch to default_encode_section_info.
...
* config/avr/avr.c (avr_encode_section_info): Dispatch to
default_encode_section_info.
From-SVN: r175629
2011-06-29 11:17:50 +00:00
Richard Sandiford
875a6c6ee3
* MAINTAINERS (RTL optimizers): Add self.
...
From-SVN: r175628
2011-06-29 10:05:43 +00:00
Richard Sandiford
73f6eabc3a
re PR middle-end/49545 (New C++ test failures)
...
gcc/
PR tree-optimization/49545
* builtins.c (get_object_alignment_1): Update function comment.
Do not use DECL_ALIGN for functions, but test
TARGET_PTRMEMFUNC_VBIT_LOCATION instead.
* fold-const.c (get_pointer_modulus_and_residue): Don't check
for functions here.
* tree-ssa-ccp.c (get_value_from_alignment): Likewise.
gcc/testsuite/
* gcc.dg/torture/pr49169.c: Restrict to ARM and MIPS targets.
From-SVN: r175627
2011-06-29 09:42:42 +00:00
Rainer Orth
0e8377f2d8
inline_1.c: Remove dg-excess-errors.
...
* gcc.dg/inline_1.c: Remove dg-excess-errors.
* gcc.dg/inline_2.c: Likewise.
* gcc.dg/unroll_1.c: Likewise.
From-SVN: r175625
2011-06-29 08:32:02 +00:00
Rainer Orth
4bdaaf2f38
* gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL).
...
From-SVN: r175624
2011-06-29 08:24:13 +00:00
Rainer Orth
bdd98b6edc
re PR libgcj/49451 (FileHandleGcTest FAILS on IRIX)
...
PR libgcj/49451
* include/private/gcconfig.h [IRIX5 && _MIPS_SZPTR == 64]
(ELF_CLASS): Define.
* dyn_load.c [IRIX5]: Include <elf.h>.
Include <obj.h> for O32, <objlist.h> for N32, N64.
[SUNOS5DL && USE_PROC_FOR_LIBRARIES] (obj_offset): Define.
[SUNOS4 && USE_PROC_FOR_LIBRARIES] (obj_offset): Define.
[IRIX5 && !USE_PROC_FOR_LIBRARIES] (struct link_map): Define.
(__rld_obj_head): Declare.
(l_next, l_addr, obj_offset): Define.
(GC_FirstDLOpenedLinkMap): New function.
[SUNOS4 || SUNOS5DL] (GC_register_dynamic_libraries): Also use on
IRIX5.
Use obj_offset.
[IRIX5 || (USE_PROC_FOR_LIBRARIES && !LINUX]
(GC_register_dynamic_libraries): Don't use /proc version on IRIX5.
From-SVN: r175623
2011-06-29 08:19:08 +00:00
Jakub Jelinek
a0f33d3a12
re PR debug/49567 (ICE in mem_loc_descriptor due to typed DWARF stack changes)
...
PR debug/49567
* dwarf2out.c (mem_loc_descriptor) <case ZERO_EXTEND>: Give up
for non-MODE_INT modes instead of asserting the mode has MODE_INT
class.
* gcc.target/i386/pr49567.c: New test.
From-SVN: r175622
2011-06-29 10:15:00 +02:00
Georg-Johann Lay
946c8b23dd
re PR target/34734 ([avr] attribute((progmem)) not handled properly in C++)
...
PR target/34734
* config/avr/avr.c (avr_handle_progmem_attribute): Move warning
about uninitialized data attributed 'progmem' from here...
(avr_encode_section_info): ...to this new function.
(TARGET_ENCODE_SECTION_INFO): New define.
(avr_section_type_flags): For data in ".progmem.data", remove
section flag SECTION_WRITE.
From-SVN: r175621
2011-06-29 07:57:25 +00:00
Georg-Johann Lay
9a63dee43d
t-avr (LIB1ASMFUNCS): Add _mulhisi3, _umulhisi3, _xmulhisi3_exit.
...
* config/avr/t-avr (LIB1ASMFUNCS): Add _mulhisi3, _umulhisi3,
_xmulhisi3_exit.
* config/avr/libgcc.S (_xmulhisi3_exit): New Function.
(__mulhisi3): Optimize if have MUL*. Use XJMP instead of rjmp.
(__umulhisi3): Ditto.
* config/avr/avr.md (mulhisi3): New insn expender.
(umulhisi3): New insn expender.
(*mulhisi3_call): New insn.
(*umulhisi3_call): New insn.
From-SVN: r175620
2011-06-29 07:52:56 +00:00
Rainer Orth
2ac88e57d7
re PR libffi/46660 (cls_double_va.c, cls_longdouble_va.c FAIL on IRIX 6.5)
...
PR libffi/46660
* testsuite/libffi.call/cls_double_va.c: xfail dg-output on
mips-sgi-irix6*.
* testsuite/libffi.call/cls_longdouble_va.c: Likewise.
From-SVN: r175618
2011-06-29 07:31:05 +00:00
GCC Administrator
a0b115a588
Daily bump.
...
From-SVN: r175616
2011-06-29 00:18:52 +00:00
Joseph Myers
4374ce45c5
* Makefile.in (LIBGCC2_CFLAGS): Remove -D__GCC_FLOAT_NOT_NEEDED.
...
From-SVN: r175607
2011-06-28 23:54:42 +01:00
Richard Henderson
9475903017
arm: Clean out dead code from thumb_pushpop.
...
Renaming to thumb_pop at the same time. The important part
of this is removing the text-based dwarf2out calls.
* config/arm/arm.c (thumb_pop): Rename from thumb_pushpop. Delete
all code and arguments that handled pushes. Update all callers.
From-SVN: r175606
2011-06-28 15:25:59 -07:00
Richard Henderson
d018b46e32
arm: Convert thumb1 prologue to rtl.
...
* config/arm/arm.c (arm_output_function_prologue): Don't call
thumb1_output_function_prologue.
(arm_expand_prologue): Avoid dead store.
(number_of_first_bit_set): Use ctz_hwi.
(thumb1_emit_multi_reg_push): New.
(thumb1_expand_prologue): Merge thumb1_output_function_prologue
to emit the entire prologue as rtl.
(thumb1_output_interwork): Split out from
thumb1_output_function_prologue.
(thumb1_output_function_prologue): Remove.
(arm_attr_length_push_multi): Handle thumb1.
* config/arm/arm.md (VUNSPEC_THUMB1_INTERWORK): New.
(prologue_thumb1_interwork): New.
(*push_multi): Allow thumb1; use push_mult_memory_operand.
* config/arm/predicates.md (push_mult_memory_operand): New.
From-SVN: r175605
2011-06-28 15:25:52 -07:00
Eric Botcazou
97269a2340
sync.md (*stbar): Delete.
...
* config/sparc/sync.md (*stbar): Delete.
(*membar_v8): New insn to implement UNSPEC_MEMBAR in SPARC-V8.
From-SVN: r175604
2011-06-28 22:03:44 +00:00
Eric Botcazou
4a9206ce4a
* tree-ssa-dom.c (initialize_hash_element): Fix oversight.
...
From-SVN: r175600
2011-06-28 21:50:06 +00:00
Janis Johnson
dac9ad16ea
Remove gcc.target/arm/ivopts-6.c, didn't happen with patch.
...
From-SVN: r175597
2011-06-28 19:36:45 +00:00
Janis Johnson
3b99e63522
2011-06-28 Janis Johnson <janisjo@codesourcery.com>
...
Tom de Vries <tom@codesourcery.com>
* lib/target-supports.exp (check_effective_target_arm_nothumb)
(check_effective_target_arm_thumb2): New effective targets.
* gcc.target/arm/ivopts.c: Remove -mthumb/-marm. Guard object-size
properly. Clean up temporary files.
* gcc.target/arm/ivopts-2.c: Likewise.
* gcc.target/arm/ivopts-3.c: Likewise.
* gcc.target/arm/ivopts-4.c: Likewise.
* gcc.target/arm/ivopts-5.c: Likewise.
* gcc.target/arm/ivopts-6.c: Remove duplicate of ivopts.c.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r175596
2011-06-28 19:33:06 +00:00
Thomas Koenig
19b76346c0
re PR fortran/49479 (reshape / optionals / zero sized arrays)
...
2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* m4/reshape.m4: If source allocation is smaller than one, set it
to one.
* intrinsics/reshape_generic.c: Likewise.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_i4.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/49479
* gfortran.dg/reshape_zerosize_3.f90: New test.
From-SVN: r175594
2011-06-28 18:59:04 +00:00
Rainer Orth
6138f9bd87
sol2-64.h (TARGET_DEFAULT): Remove.
...
* config/sparc/sol2-64.h (TARGET_DEFAULT): Remove.
(TARGET_64BIT_DEFAULT): Define.
* config.gcc (sparc*-*-solaris2*): Move sparc/sol2-64.h to front
of tm_file.
* config/sparc/sol2.h [TARGET_64BIT_DEFAULT] (TARGET_DEFAULT): Define.
From-SVN: r175593
2011-06-28 17:50:50 +00:00
Joseph Myers
a7d0d30f0b
common.opt (in_lto_p): New Variable entry.
...
* common.opt (in_lto_p): New Variable entry.
* flags.h (in_lto_p): Move to common.opt.
* gcc.c: Include params.h.
(set_option_handlers): Also use common_handle_option and
target_handle_option.
(main): Call global_init_params, finish_params and
init_options_struct.
* opts.c (debug_type_names): Move from toplev.c.
(print_filtered_help): Access quiet_flag through opts pointer.
(common_handle_option): Return early in the driver for some
options. Access in_lto_p, dwarf_version and
warn_maybe_uninitialized through opts pointer.
* toplev.c (in_lto_p): Move to common.opt.
(debug_type_names): Move to opts.c.
* Makefile.in (OBJS): Remove opts.o.
(OBJS-libcommon-target): Add opts.o.
(gcc.o): Update dependencies.
From-SVN: r175591
2011-06-28 18:00:59 +01:00
Janis Johnson
cc6aa1000f
vfp-ldmdbs.c: Skip for soft float.
...
* gcc.target/arm/vfp-ldmdbs.c: Skip for soft float.
* gcc.target/arm/vfp-ldmias.c: Likewise.
* gcc.target/arm/vfp-ldmdbd.c: Likewise.
* gcc.target/arm/vfp-stmdbs.c: Likewise.
* gcc.target/arm/vfp-ldmiad.c: Likewise.
* gcc.target/arm/vfp-stmias.c: Likewise.
* gcc.target/arm/vfp-stmdbd.c: Likewise.
* gcc.target/arm/vfp-stmiad.c: Likewise.
From-SVN: r175590
2011-06-28 16:17:03 +00:00
Kai Tietz
420863a942
tree-ssa-forwprop.c (simplify_bitwise_binary): Improve type sinking.
...
2011-06-28 Kai Tietz <ktietz@redhat.com>
* tree-ssa-forwprop.c (simplify_bitwise_binary): Improve
type sinking.
From-SVN: r175589
2011-06-28 17:32:47 +02:00
Ramana Radhakrishnan
0498a2be0d
Fix constraints.
...
2011-06-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
* config/arm/vfp.md ("*divsf3_vfp"): Replace '+' constraint modifier
with '=' constraint modifier.
(*divdf3_vfp): Likewise.
("*mulsf3_vfp"): Likewise.
("*muldf3_vfp"): Likewise.
("*mulsf3negsf_vfp"): Likewise.
("*muldf3negdf_vfp"): Likewise.
From-SVN: r175588
2011-06-28 14:54:58 +00:00
Nick Clifton
4a68b724cc
mn10300.h (LINK_SPEC): Do not use linker relaxation when performing an incremental link.
...
* config/mn10300/mn10300.h (LINK_SPEC): Do not use linker
relaxation when performing an incremental link.
From-SVN: r175584
2011-06-28 13:59:28 +00:00
Kai Tietz
72a3272969
tree-ssa-math-opts.c (execute_optimize_bswap): Search within BB from last to first.
...
2011-06-28 Kai Tietz <ktietz@redhat.com>
* tree-ssa-math-opts.c (execute_optimize_bswap): Search
within BB from last to first.
From-SVN: r175580
2011-06-28 12:36:48 +02:00
Joseph Myers
88a00ef7d6
genattr-common.c: New.
...
* genattr-common.c: New. Based on genattr.c.
* Makefile.in (INSN_ATTR_H): Include insn-attr-common.h.
(MOSTLYCLEANFILES): Add insn-attr-common.h.
(opts.o): Update dependencies.
(.PRECIOUS): Add insn-attr-common.h.
(simple_rtl_generated_h): Add insn-attr-common.h.
(build/genattr-common.o): New.
(genprogrtl): Add attr-common.
* genattr.c (main): Include insn-attr-common.h. Don't generate
definitions of DELAY_SLOTS or INSN_SCHEDULING.
* opts.c: Include insn-attr-common.h instead of rtl.h and
insn-attr.h.
From-SVN: r175579
2011-06-28 11:28:09 +01:00
Nick Clifton
a9633db4d2
Revert spurious change to mn10300_get_live_callee_saved_regs
...
From-SVN: r175577
2011-06-28 08:50:45 +00:00