Chris Schlumberger-Socha [Thu, 23 May 2013 14:09:39 +0000 (14:09 +0000)]
[AArch64] Refactor aarch64_mov_operand predicate.
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
From-SVN: r199259
Matthias Klose [Thu, 23 May 2013 14:02:14 +0000 (14:02 +0000)]
Makefile.am (bits_headers): Remove ${bits_host_headers}.
2013-05-23 Matthias Klose <doko@ubuntu.com>
* include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
(ext_headers): Remove ${ext_host_headers}.
(stamp-${host_alias}): Create ${host_builddir}/../ext.
(stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
(install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
* include/Makefile.in: Regenerate.
* include/ext/random: Include ext/opt_random.h.
From-SVN: r199257
Martin Jambor [Thu, 23 May 2013 13:45:17 +0000 (15:45 +0200)]
Fixed ChangeLog dates.
From-SVN: r199256
Vidya Praveen [Thu, 23 May 2013 13:36:41 +0000 (14:36 +0100)]
[AArch64] Support for CLZ
2013-05-23 Vidya Praveen <vidyapraveen@arm.com>
* config/aarch64/aarch64-simd.md (clzv4si2): Support for CLZ
instruction (AdvSIMD).
* config/aarch64/aarch64-builtins.c
(aarch64_builtin_vectorized_function): Handler for BUILT_IN_CLZ.
* config/aarch64/aarch-simd-builtins.def: Entry for CLZ.
From-SVN: r199254
Martin Jambor [Thu, 23 May 2013 13:20:41 +0000 (15:20 +0200)]
re PR middle-end/57347 (wrong code for bitfield on x86_64-linux at -Os and above)
2013-05-22 Martin Jambor <mjambor@suse.cz>
PR middle-end/57347
* tree.h (contains_bitfld_component_ref_p): Declare.
* tree-sra.c (contains_bitfld_comp_ref_p): Move...
* tree.c (contains_bitfld_component_ref_p): ...here. Adjust its caller.
* ipa-prop.c (determine_known_aggregate_parts): Check that LHS does
not access a bit-field. Assert all final offsets are byte-aligned.
testsuite/
* gcc.dg/ipa/pr57347.c: New test.
From-SVN: r199252
Alexander Ivchenko [Thu, 23 May 2013 12:52:01 +0000 (12:52 +0000)]
inclhack.def (complier_h_tradcpp): New.
* inclhack.def (complier_h_tradcpp): New.
* fixincl.x: Rebuilt.
* tests/base/linux/compiler.h: New.
From-SVN: r199249
Richard Biener [Thu, 23 May 2013 12:23:59 +0000 (12:23 +0000)]
re PR tree-optimization/57380 (GCC 4.9.0 will not vectorize std::max and similar functions)
2013-05-23 Richard Biener <rguenther@suse.de>
PR tree-optimization/57380
* tree-ssa-phiprop.c (propagate_with_phi): Do not require at
least one invariant or re-used load.
* passes.c (init_optimization_passes): Move pass_phiprop before
pass_forwprop.
* g++.dg/tree-ssa/pr57380.C: New testcase.
From-SVN: r199246
James Greenhalgh [Thu, 23 May 2013 10:18:19 +0000 (10:18 +0000)]
[AArch64] Fix possible wrong code generation when comparing DImode values.
gcc/
* config/aarch64/aarch64-simd.md
(aarch64_cm<optab>di): Add clobber of CC_REGNUM to unsplit pattern.
From-SVN: r199241
Richard Biener [Thu, 23 May 2013 10:08:33 +0000 (10:08 +0000)]
re PR rtl-optimization/57381 (array of volatile pointers hangs gcc)
2013-05-23 Richard Biener <rguenther@suse.de>
PR middle-end/57381
* fold-const.c (operand_equal_p): Compare FIELD_DECLs with
OEP_CONSTANT_ADDRESS_OF retained.
* gcc.dg/torture/pr57381.c: New testcase.
From-SVN: r199240
Jakub Jelinek [Thu, 23 May 2013 09:17:34 +0000 (11:17 +0200)]
re PR rtl-optimization/57344 (wrong code with pragma pack(1) and -O1 on x86)
PR middle-end/57344
* expmed.c (store_split_bit_field): If op0 is a REG or
SUBREG of a REG, don't lower unit. Handle unit not being
always BITS_PER_WORD.
* gcc.c-torture/execute/pr57344-1.c: New test.
* gcc.c-torture/execute/pr57344-2.c: New test.
* gcc.c-torture/execute/pr57344-3.c: New test.
* gcc.c-torture/execute/pr57344-4.c: New test.
From-SVN: r199238
Richard Biener [Thu, 23 May 2013 08:37:24 +0000 (08:37 +0000)]
re PR target/57341 (wrong code on x86_64-linux at -O3 in 32-bit mode)
2013-05-23 Richard Biener <rguenther@suse.de>
PR rtl-optimization/57341
* ira.c (validate_equiv_mem_from_store): Use anti_dependence
instead of true_dependence.
* gcc.dg/torture/pr57341.c: New testcase.
From-SVN: r199237
Michael Meissner [Thu, 23 May 2013 03:55:04 +0000 (03:55 +0000)]
add missing file
From-SVN: r199233
Jason Merrill [Thu, 23 May 2013 03:47:35 +0000 (23:47 -0400)]
re PR c++/56930 (pointless -Wconversion warning with sizeof)
PR c++/56930
* call.c (convert_like_real): Use cp_convert_and_check.
* cvt.c (cp_convert_and_check): Use maybe_constant_value.
* semantics.c (cxx_eval_constant_expression): Handle LTGT_EXPR.
(potential_constant_expression_1): Handle OMP_ATOMIC*.
From-SVN: r199232
Jason Merrill [Thu, 23 May 2013 03:46:44 +0000 (23:46 -0400)]
re PR c++/56915 (ICE in symtab_add_to_same_comdat_group, at symtab.c:383)
PR c++/56915
* semantics.c (maybe_add_lambda_conv_op): Give up if the call op
isn't defined.
From-SVN: r199231
David Malcolm [Thu, 23 May 2013 02:19:36 +0000 (02:19 +0000)]
bb-reorder.c (branch_threshold): make const
gcc/
* bb-reorder.c (branch_threshold): make const
(exec_threshold): ditto
From-SVN: r199230
GCC Administrator [Thu, 23 May 2013 00:16:39 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199228
Paolo Carlini [Wed, 22 May 2013 22:45:55 +0000 (22:45 +0000)]
re PR c++/57352 (internal compiler error in cp_parser_abort_tentative_parse at cp/parser.c:22878)
/cp
2013-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57352
* parser.c (cp_parser_conversion_type_id): Set up
parser->type_definition_forbidden_message before calling
cp_parser_type_specifier_seq.
/testsuite
2013-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57352
* g++.dg/parse/crash62.C: New.
From-SVN: r199224
Mark Mitchell [Wed, 22 May 2013 21:25:59 +0000 (21:25 +0000)]
configure.ac (dbexecdir): Base on $(toolexeclibdir), not $(libdir).
2013-05-22 Mark Mitchell <mark@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
libjava/
* configure.ac (dbexecdir): Base on $(toolexeclibdir), not
$(libdir).
* Makefile.am (pkgconfigdir): Likewise.
* configure: Regenerated.
* Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
libjava/classpath/
* configure.ac: Define host_noncanonical and target_noncanonical.
Support --enable-version-specific-runtime-libs.
* m4/acinclude.m4 (CLASSPATH_TOOLEXECLIBDIR): Match libjava
definition of toolexeclibdir.
* configure: Regenerated.
* Makefile.in: Regenerated.
* doc/api/Makefile.in: Regenerated.
* doc/Makefile.in: Regenerated.
* examples/Makefile.in: Regenerated.
* external/jsr166/Makefile.in: Regenerated.
* external/Makefile.in: Regenerated.
* external/relaxngDatatype/Makefile.in: Regenerated.
* external/sax/Makefile.in: Regenerated.
* external/w3c_dom/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* lib/Makefile.in: Regenerated.
* native/fdlibm/Makefile.in: Regenerated.
* native/jawt/Makefile.in: Regenerated.
* native/jni/Makefile.in: Regenerated.
* native/jni/gconf-peer/Makefile.in: Regenerated.
* native/jni/gstreamer-peer/Makefile.in: Regenerated.
* native/jni/gtk-peer/Makefile.in: Regenerated.
* native/jni/java-io/Makefile.in: Regenerated.
* native/jni/java-lang/Makefile.in: Regenerated.
* native/jni/java-math/Makefile.in: Regenerated.
* native/jni/java-net/Makefile.in: Regenerated.
* native/jni/java-nio/Makefile.in: Regenerated.
* native/jni/java-util/Makefile.in: Regenerated.
* native/jni/Makefile.in: Regenerated.
* native/jni/midi-alsa/Makefile.in: Regenerated.
* native/jni/midi-dssi/Makefile.in: Regenerated.
* native/jni/native-lib/Makefile.in: Regenerated.
* native/jni/qt-peer/Makefile.in: Regenerated.
* native/jni/xmlj/Makefile.in: Regenerated.
* native/Makefile.in: Regenerated.
* native/plugin/Makefile.in: Regenerated.
* resource/Makefile.in: Regenerated.
* scripts/Makefile.in: Regenerated.
* tools/Makefile.in: Regenerated.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r199221
Eric Botcazou [Wed, 22 May 2013 20:44:16 +0000 (20:44 +0000)]
config.host (powerpc-*-elf*): Add rs6000/t-savresfgpr to tmake_file.
* config.host (powerpc-*-elf*): Add rs6000/t-savresfgpr to tmake_file.
(powerpc-wrs-vxworks): Likewise.
From-SVN: r199219
Michael Meissner [Wed, 22 May 2013 20:14:29 +0000 (20:14 +0000)]
extend.texi (PowerPC AltiVec/VSX Built-in Functions): Add documentation for the power8 crypto builtins.
[gcc]
2013-05-22 Michael Meissner <meissner@linux.vnet.ibm.com>
Pat Haugen <pthaugen@us.ibm.com>
Peter Bergner <bergner@vnet.ibm.com>
* doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions): Add
documentation for the power8 crypto builtins.
* config/rs6000/t-rs6000 (MD_INCLUDES): Add crypto.md.
* config/rs6000/rs6000-builtin.def (BU_P8V_AV_1): Add support
macros for defining power8 builtin functions.
(BU_P8V_AV_2): Likewise.
(BU_P8V_AV_P): Likewise.
(BU_P8V_VSX_1): Likewise.
(BU_P8V_OVERLOAD_1): Likewise.
(BU_P8V_OVERLOAD_2): Likewise.
(BU_CRYPTO_1): Likewise.
(BU_CRYPTO_2): Likewise.
(BU_CRYPTO_3): Likewise.
(BU_CRYPTO_OVERLOAD_1): Likewise.
(BU_CRYPTO_OVERLOAD_2): Likewise.
(XSCVSPDP): Fix typo, point to the correct instruction.
(VCIPHER): Add power8 crypto builtins.
(VCIPHERLAST): Likewise.
(VNCIPHER): Likewise.
(VNCIPHERLAST): Likewise.
(VPMSUMB): Likewise.
(VPMSUMH): Likewise.
(VPMSUMW): Likewise.
(VPERMXOR_V2DI): Likewise.
(VPERMXOR_V4SI: Likewise.
(VPERMXOR_V8HI: Likewise.
(VPERMXOR_V16QI: Likewise.
(VSHASIGMAW): Likewise.
(VSHASIGMAD): Likewise.
(VPMSUM): Likewise.
(VPERMXOR): Likewise.
(VSHASIGMA): Likewise.
* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
__CRYPTO__ if the crypto instructions are available.
(altivec_overloaded_builtins): Add support for overloaded power8
builtins.
* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Add
support for power8 crypto builtins.
(builtin_function_type): Likewise.
(altivec_init_builtins): Add support for builtins that take vector
long long (V2DI) arguments.
* config/rs6000/crypto.md: New file, define power8 crypto
instructions.
2013-05-22 Michael Meissner <meissner@linux.vnet.ibm.com>
Pat Haugen <pthaugen@us.ibm.com>
Peter Bergner <bergner@vnet.ibm.com>
* doc/invoke.texi (Option Summary): Add power8 options.
(RS/6000 and PowerPC Options): Likewise.
* doc/md.texi (PowerPC and IBM RS6000 constraints): Update to use
constraints.md instead of rs6000.h. Reorder w* constraints. Add
wm, wn, wr documentation.
* gcc/config/rs6000/constraints.md (wm): New constraint for VSX
registers if direct move instructions are enabled.
(wn): New constraint for no registers.
(wq): New constraint for quad word even GPR registers.
(wr): New constraint if 64-bit instructions are enabled.
(wv): New constraint if power8 vector instructions are enabled.
(wQ): New constraint for quad word memory locations.
* gcc/config/rs6000/predicates.md (const_0_to_15_operand): New
constraint for 0..15 for crypto instructions.
(gpc_reg_operand): If VSX allow registers in VSX registers as well
as GPR and floating point registers.
(int_reg_operand): New predicate to match only GPR registers.
(base_reg_operand): New predicate to match base registers.
(quad_int_reg_operand): New predicate to match even GPR registers
for quad memory operations.
(vsx_reg_or_cint_operand): New predicate to allow vector logical
operations in both GPR and VSX registers.
(quad_memory_operand): New predicate for quad memory operations.
(reg_or_indexed_operand): New predicate for direct move support.
* gcc/config/rs6000/rs6000-cpus.def (ISA_2_5_MASKS_EMBEDDED):
Inherit from ISA_2_4_MASKS, not ISA_2_2_MASKS.
(ISA_2_7_MASKS_SERVER): New mask for ISA 2.07 (i.e. power8).
(POWERPC_MASKS): Add power8 options.
(power8 cpu): Use ISA_2_7_MASKS_SERVER instead of specifying the
various options.
* gcc/config/rs6000/rs6000-c.c (rs6000_target_modify_macros):
Define _ARCH_PWR8 and __POWER8_VECTOR__ for power8.
* gcc/config/rs6000/rs6000.opt (-mvsx-timode): Add documentation.
(-mpower8-fusion): New power8 options.
(-mpower8-fusion-sign): Likewise.
(-mpower8-vector): Likewise.
(-mcrypto): Likewise.
(-mdirect-move): Likewise.
(-mquad-memory): Likewise.
* gcc/config/rs6000/rs6000.c (power8_cost): Initial definition for
power8.
(rs6000_hard_regno_mode_ok): Make PTImode only match even GPR
registers.
(rs6000_debug_reg_print): Print the base register class if
-mdebug=reg.
(rs6000_debug_vector_unit): Add p8_vector.
(rs6000_debug_reg_global): If -mdebug=reg, print power8 constraint
definitions. Also print fusion state.
(rs6000_init_hard_regno_mode_ok): Set up power8 constraints.
(rs6000_builtin_mask_calculate): Add power8 builtin support.
(rs6000_option_override_internal): Add support for power8.
(rs6000_common_init_builtins): Add debugging for skipped builtins
if -mdebug=builtin.
(rs6000_adjust_cost): Add power8 support.
(rs6000_issue_rate): Likewise.
(insn_must_be_first_in_group): Likewise.
(insn_must_be_last_in_group): Likewise.
(force_new_group): Likewise.
(rs6000_register_move_cost): Likewise.
(rs6000_opt_masks): Likewise.
* config/rs6000/rs6000.h (ASM_CPU_POWER8_SPEC): If we don't have a
power8 capable assembler, default to power7 options.
(TARGET_DIRECT_MOVE): Likewise.
(TARGET_CRYPTO): Likewise.
(TARGET_P8_VECTOR): Likewise.
(VECTOR_UNIT_P8_VECTOR_P): Define power8 vector support.
(VECTOR_UNIT_VSX_OR_P8_VECTOR_P): Likewise.
(VECTOR_MEM_P8_VECTOR_P): Likewise.
(VECTOR_MEM_VSX_OR_P8_VECTOR_P): Likewise.
(VECTOR_MEM_ALTIVEC_OR_VSX_P): Likewise.
(TARGET_XSCVDPSPN): Likewise.
(TARGET_XSCVSPDPN): Likewsie.
(TARGET_SYNC_HI_QI): Likewise.
(TARGET_SYNC_TI): Likewise.
(MASK_CRYPTO): Likewise.
(MASK_DIRECT_MOVE): Likewise.
(MASK_P8_FUSION): Likewise.
(MASK_P8_VECTOR): Likewise.
(REG_ALLOC_ORDER): Move fr13 to be lower in priority so that the
TFmode temporary used by some of the direct move instructions to
get two FP temporary registers does not force creation of a stack
frame.
(VLOGICAL_REGNO_P): Allow vector logical operations in GPRs.
(MODES_TIEABLE_P): Move the VSX tests above the Altivec tests so
that any VSX registers are tieable, even if they are also an
Altivec vector mode.
(r6000_reg_class_enum): Add wm, wr, wv constraints.
(RS6000_BTM_P8_VECTOR): Power8 builtin support.
(RS6000_BTM_CRYPTO): Likewise.
(RS6000_BTM_COMMON): Likewise.
* config/rs6000/rs6000.md (cpu attribute): Add power8.
* config/rs6000/rs6000-opts.h (PROCESSOR_POWER8): Likewise.
(enum rs6000_vector): Add power8 vector support.
[gcc/testsuite]
2013-05-22 Michael Meissner <meissner@linux.vnet.ibm.com>
Pat Haugen <pthaugen@us.ibm.com>
Peter Bergner <bergner@vnet.ibm.com>
* gcc.target/powerpc/crypto-builtin-1.c: New file, test for power8
crypto builtins.
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r199217
Tobias Burnus [Wed, 22 May 2013 19:24:29 +0000 (21:24 +0200)]
resolve.c (get_temp_from_expr): Change mangling to start always with a _.
2013-05-22 Tobias Burnus <burnus@net-b.de>
* resolve.c (get_temp_from_expr): Change mangling to
start always with a _.
From-SVN: r199215
Tobias Burnus [Wed, 22 May 2013 19:14:51 +0000 (21:14 +0200)]
resolve.c (get_temp_from_expr): Fix temp var mangling.
2013-05-22 Tobias Burnus <burnus@net-b.de>
* resolve.c (get_temp_from_expr): Fix temp var mangling.
From-SVN: r199214
Ramana Radhakrishnan [Wed, 22 May 2013 15:26:20 +0000 (15:26 +0000)]
Fix PR target/57340 and additionally for PR target/19599.
2013-05-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
PR target/57340
* config/arm/arm.c (any_sibcall_uses_r3): Rename to ..
(any_sibcall_could_use_r3): this and handle indirect calls.
(arm_get_frame_offsets): Rename use of any_sibcall_uses_r3.
From-SVN: r199203
Matthias Klose [Wed, 22 May 2013 12:48:39 +0000 (12:48 +0000)]
jvspec.c (jvgenmain_spec): Add %I to cc1 call.
2013-05-22 Matthias Klose <doko@ubuntu.com>
* jvspec.c (jvgenmain_spec): Add %I to cc1 call.
From-SVN: r199199
Bill Schmidt [Wed, 22 May 2013 12:48:18 +0000 (12:48 +0000)]
rs6000.h (MALLOC_ABI_ALIGNMENT): New #define.
2013-05-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.h (MALLOC_ABI_ALIGNMENT): New #define.
From-SVN: r199198
Tobias Burnus [Wed, 22 May 2013 12:43:55 +0000 (14:43 +0200)]
re PR fortran/57364 ([OOP] ICE gfc_enforce_clean_symbol_state)
2013-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57364
* resolve.c (get_temp_from_expr): Commit created sym.
2013-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57364
* gfortran.dg/defined_assignment_6.f90: New.
From-SVN: r199196
Dominique d'Humieres [Wed, 22 May 2013 11:47:52 +0000 (13:47 +0200)]
Fix several libffi testsuite failures on 64-bit SPARC and PowerPC (PR libffi/56033)
PR libffi/56033
* testsuite/libffi.call/cls_struct_va1.c (test_fn): Cast resp to
ffi_arg *.
* testsuite/libffi.call/cls_uint_va.c (cls_ret_T_fn): Likewise.
* testsuite/libffi.call/va_1.c (main): Change res to ffi_arg.
* testsuite/libffi.call/va_struct1.c (main): Likewise.
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r199194
Richard Biener [Wed, 22 May 2013 11:16:32 +0000 (11:16 +0000)]
re PR tree-optimization/57349 (ICE on 253.perlbmk with pgo after r198096)
2013-05-22 Richard Biener <rguenther@suse.de>
PR middle-end/57349
* profile.c (branch_prob): Do not split blocks that are
abnormally receiving from ECF_RETURNS_TWICE functions.
From-SVN: r199193
Tobias Burnus [Wed, 22 May 2013 11:13:17 +0000 (13:13 +0200)]
re PR fortran/57338 (ICE with assumed rank)
2013-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57338
* intrinsic.c (do_check): Move some checks to ...
(do_ts29113_check): ... this new function.
(check_specific, gfc_intrinsic_sub_interface): Call it.
2013-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57338
* gfortran.dg/assumed_type_6.f90: New.
From-SVN: r199192
Eric Botcazou [Wed, 22 May 2013 10:39:03 +0000 (10:39 +0000)]
sol2-unwind.h (sparc64_frob_update_context): Do it for signal frames as well.
* config/sparc/sol2-unwind.h (sparc64_frob_update_context): Do it for
signal frames as well.
(MD_FALLBACK_FRAME_STATE_FOR): Do minor cleanups throughout and add the
STACK_BIAS to the CFA offset.
From-SVN: r199191
Paolo Carlini [Wed, 22 May 2013 09:33:29 +0000 (09:33 +0000)]
re PR c++/57211 (wrong line indicated in warning for synthesized method)
/cp
2013-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57211
* method.c (defaultable_fn_check): Avoid do_warn_unused_parameter
warnings about defaulted functions.
/testsuite
2013-05-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57211
* g++.dg/cpp0x/Wunused-parm.C: New.
From-SVN: r199189
Richard Sandiford [Wed, 22 May 2013 09:21:25 +0000 (09:21 +0000)]
recog.c (offsettable_address_addr_space_p): Fix calculation of address mode.
gcc/
* recog.c (offsettable_address_addr_space_p): Fix calculation of
address mode. Move pointer mode initialization to the same place.
From-SVN: r199188
Paolo Carlini [Wed, 22 May 2013 09:14:46 +0000 (09:14 +0000)]
objc-next-runtime-abi-02.c (build_v2_build_objc_method_call): Fix build_conditional_expr call.
2013-05-22 Paolo Carlini <paolo.carlini@oracle.com>
* objc-next-runtime-abi-02.c (build_v2_build_objc_method_call):
Fix build_conditional_expr call.
From-SVN: r199187
Jonathan Wakely [Wed, 22 May 2013 08:12:45 +0000 (08:12 +0000)]
acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to enable features if target OS is known to support them.
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
enable features if target OS is known to support them.
* configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
* configure: Regenerate.
From-SVN: r199183
Janne Blomqvist [Wed, 22 May 2013 08:06:53 +0000 (11:06 +0300)]
Improve RANDOM_SEED example.
2013-05-22 Janne Blomqvist <jb@gcc.gnu.org>
* intrinsic.texi (RANDOM_SEED): Improve example.
From-SVN: r199182
Michael Zolotukhin [Wed, 22 May 2013 07:48:13 +0000 (07:48 +0000)]
read-rtl.c (copy_rtx_for_iterators): Continue applying iterators while it has any effect.
* read-rtl.c (copy_rtx_for_iterators): Continue applying iterators
while it has any effect.
From-SVN: r199177
GCC Administrator [Wed, 22 May 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199173
David Edelsohn [Tue, 21 May 2013 23:08:28 +0000 (19:08 -0400)]
- Remove SVN merge marker.
From-SVN: r199167
Paolo Carlini [Tue, 21 May 2013 22:49:24 +0000 (22:49 +0000)]
call.c (build_conditional_expr_1): Add location_t parameter.
/cp
2013-05-21 Paolo Carlini <paolo.carlini@oracle.com>
* call.c (build_conditional_expr_1): Add location_t parameter.
(build_conditional_expr): Likewise.
* typeck.c (rationalize_conditional_expr, cp_build_array_ref,
get_member_function_from_ptrfunc, build_x_conditional_expr,
cp_build_modify_expr): Update.
* init.c (build_new_1): Likewise.
* cp-tree.h: Update declaration.
/testsuite
2013-05-21 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/explicit3.C: Add column in dg-error strings.
* g++.dg/warn/Wdouble-promotion.C: Likewise.
From-SVN: r199166
Easwaran Raman [Tue, 21 May 2013 22:36:29 +0000 (22:36 +0000)]
re PR tree-optimization/57322 (Segfault at -O1 in build_and_add_sum)
2013-05-21 Easwaran Raman <eraman@google.com>
PR tree-optimization/57322
* (build_and_add_sum): If a BB is empty, set the UID of the statement
added to the BB to be 1.
testsuite/ChangeLog:
2013-05-21 Easwaran Raman <eraman@google.com>
PR tree-optimization/57322
* gcc.dg/tree-ssa/reassoc-29.c: New testcase.
From-SVN: r199165
Graham Stott [Tue, 21 May 2013 18:29:21 +0000 (18:29 +0000)]
scanasm.exp (dg-function-on-line): Make MIPS targets match .set (no)?micromips
gcc/testsuite/
2013-05-21 Graham Stott <graham.stott@btinternet.com>
* lib/scanasm.exp (dg-function-on-line): Make MIPS targets match
.set (no)?micromips
From-SVN: r199161
Tobias Burnus [Tue, 21 May 2013 17:27:04 +0000 (19:27 +0200)]
re PR fortran/57035 (TS29113's C535b: Wrongly accept DIMENSION(..) to TRANSFER)
2013-05-21 Tobias Burnus <burnus@net-b.de>
PR fortran/57035
* intrinsic.c (do_check): Add contraint check for
NO_ARG_CHECK, assumed rank and assumed type.
* gfortran.texi (NO_ARG_CHECK): Minor wording change,
allow PRESENT intrinsic.
2013-05-21 Tobias Burnus <burnus@net-b.de>
PR fortran/57035
* gfortran.dg/assumed_type_5.f90: New.
* gfortran.dg/assumed_rank_1.f90: Comment invalid statement.
* gfortran.dg/assumed_rank_2.f90: Ditto.
* gfortran.dg/assumed_type_3.f90: Update dg-error.
* gfortran.dg/no_arg_check_3.f90: Ditto.
From-SVN: r199158
Jakub Jelinek [Tue, 21 May 2013 15:59:54 +0000 (17:59 +0200)]
Fix up CL entry.
From-SVN: r199150
Jakub Jelinek [Tue, 21 May 2013 15:17:31 +0000 (17:17 +0200)]
re PR tree-optimization/57331 (ICE: tree check: expected integer_type or enumeral_type or boolean_type or real_type or fixed_point_type, have pointer_type in int_fits_type_p, at tree.c:8437)
PR tree-optimization/57331
* tree-vrp.c (simplify_cond_using_ranges): Don't optimize
comparison of conversion from pointer type to integral type
with integer.
* gcc.c-torture/compile/pr57331.c: New test.
From-SVN: r199148
David Malcolm [Tue, 21 May 2013 14:43:16 +0000 (14:43 +0000)]
repro_fail: filter out "-ignore SIGHUP" from the spawn lines
contrib/
* repro_fail: filter out "-ignore SIGHUP" from the spawn lines
From-SVN: r199147
Martin Jambor [Tue, 21 May 2013 13:49:30 +0000 (15:49 +0200)]
re PR lto/57289 (ICE during 454.calculix compilation with -O3 -flto)
2013-05-21 Martin Jambor <mjambor@suse.cz>
PR lto/57289
* ipa-prop.c (ipa_read_node_info): Process param_used and
controlled_uses in the same order as when writing.
From-SVN: r199145
Magnus Granberg [Tue, 21 May 2013 13:01:34 +0000 (15:01 +0200)]
Readd TARGET_H to the list of exported plugin headers, fixing PR plugins/56754.
TARGET_H was removed in commit 188166, however several plugins need it, see the
PR for details. Applying under the trivial rule.
From-SVN: r199144
Richard Biener [Tue, 21 May 2013 11:59:28 +0000 (11:59 +0000)]
re PR tree-optimization/57318 (optimizer takes several seconds on nested loops)
2013-05-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/57318
* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Do not
estimate stmts with side-effects as likely eliminated.
From-SVN: r199140
Richard Biener [Tue, 21 May 2013 11:56:57 +0000 (11:56 +0000)]
re PR tree-optimization/57330 (ICE: verify_gimple failed -O3 [tree-cfg.c:4792])
2013-05-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/57330
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Properly
preserve the call stmts fntype.
* gcc.dg/torture/pr57330.c: New testcase.
From-SVN: r199139
Jonathan Wakely [Tue, 21 May 2013 08:15:13 +0000 (08:15 +0000)]
re PR libstdc++/57336 (Cannot INVOKE a reference_wrapper around an abstract type)
PR libstdc++/57336
* include/std/functional (__invoke): Do not form function types with
abstract return type.
* testsuite/20_util/reference_wrapper/invoke-3.cc: New.
From-SVN: r199136
Richard Biener [Tue, 21 May 2013 08:11:23 +0000 (08:11 +0000)]
re PR tree-optimization/57303 (struct miscompiled at -O1 and above)
2013-05-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/57303
* tree-ssa-sink.c (statement_sink_location): Improve killing
stmt detection and properly handle self-assignments.
* gcc.dg/torture/pr57303.c: New testcase.
From-SVN: r199135
Jakub Jelinek [Tue, 21 May 2013 07:51:59 +0000 (09:51 +0200)]
re PR tree-optimization/57321 (static function call miscompiled at -Os and above)
PR tree-optimization/57321
* gcc.c-torture/execute/pr57321.c: New test.
From-SVN: r199133
Christian Bruel [Tue, 21 May 2013 07:48:08 +0000 (09:48 +0200)]
dwarf2out.c (multiple_reg_loc_descriptor): Use dbx_reg_number for spanning registers.
2013-05-21 Christian Bruel <christian.bruel@st.com>
* dwarf2out.c (multiple_reg_loc_descriptor): Use dbx_reg_number for
spanning registers. LEAF_REG_REMAP is supported only for contiguous
registers. Set register size out of the PARALLEL loop.
From-SVN: r199132
GCC Administrator [Tue, 21 May 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199131
Jason Merrill [Mon, 20 May 2013 21:34:35 +0000 (17:34 -0400)]
re PR c++/57016 ([C++0x] ICE: unexpected expression '__is_final(hash<int>)' of kind trait_expr)
PR c++/57016
* pt.c (instantiation_dependent_r) [TRAIT_EXPR]: Only check type2
if there is one.
From-SVN: r199126
Jason Merrill [Mon, 20 May 2013 21:34:29 +0000 (17:34 -0400)]
re PR c++/57102 (ICE: SIGSEGV in fndecl_declared_return_type with -fdump-final-insns=...)
PR c++/57102
* decl.c (fndecl_declared_return_type): Also look in
DECL_SAVED_FUNCTION_DATA.
From-SVN: r199125
Tobias Burnus [Mon, 20 May 2013 20:08:05 +0000 (22:08 +0200)]
re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
PR fortran/55465
* decl.c (add_global_entry): Add sym_name.
* parse.c (add_global_procedure): Ditto.
* resolve.c (resolve_bind_c_derived_types): Handle multiple decl for
a procedure.
(resolve_global_procedure): Handle gsym->ns pointing to a module.
* trans-decl.c (gfc_get_extern_function_decl): Ditto.
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
PR fortran/55465
* gfortran.dg/binding_label_tests_10_main.f03: Update dg-error.
* gfortran.dg/binding_label_tests_11_main.f03: Ditto.
* gfortran.dg/binding_label_tests_13_main.f03: Ditto.
* gfortran.dg/binding_label_tests_3.f03: Ditto.
* gfortran.dg/binding_label_tests_4.f03: Ditto.
* gfortran.dg/binding_label_tests_5.f03: Ditto.
* gfortran.dg/binding_label_tests_6.f03: Ditto.
* gfortran.dg/binding_label_tests_7.f03: Ditto.
* gfortran.dg/binding_label_tests_8.f03: Ditto.
* gfortran.dg/c_loc_tests_12.f03: Fix test case.
* gfortran.dg/binding_label_tests_24.f90: New.
* gfortran.dg/binding_label_tests_25.f90: New.
From-SVN: r199120
Tobias Burnus [Mon, 20 May 2013 20:05:40 +0000 (22:05 +0200)]
re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
* decl.c (add_global_entry): Use nonbinding name
only for F2003 or if no binding label exists.
(gfc_match_entry): Update calls.
* parse.c (gfc_global_used): Improve error message.
(add_global_procedure): Use nonbinding name
only for F2003 or if no binding label exists.
(gfc_parse_file): Update call.
* resolve.c (resolve_global_procedure): Use binding
name when available.
* trans-decl.c (gfc_get_extern_function_decl): Ditto.
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
* gfortran.dg/binding_label_tests_17.f90: New.
* gfortran.dg/binding_label_tests_18.f90: New.
* gfortran.dg/binding_label_tests_19.f90: New.
* gfortran.dg/binding_label_tests_20.f90: New.
* gfortran.dg/binding_label_tests_21.f90: New.
* gfortran.dg/binding_label_tests_22.f90: New.
* gfortran.dg/binding_label_tests_23.f90: New.
From-SVN: r199119
Tobias Burnus [Mon, 20 May 2013 20:03:48 +0000 (22:03 +0200)]
re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
* decl.c (gfc_match_bind_c_stmt): Add gfc_notify_std.
* match.c (gfc_match_common): Don't add commons to gsym.
* resolve.c (resolve_common_blocks): Add to gsym and
add checks.
(resolve_bind_c_comms): Remove.
(resolve_types): Remove call to the latter.
* trans-common.c (gfc_common_ns): Remove static var.
(gfc_map_of_all_commons): Add static var.
(build_common_decl): Correctly handle binding label.
2013-05-20 Tobias Burnus <burnus@net-b.de>
PR fortran/48858
* gfortran.dg/test_common_binding_labels.f03: Update dg-error.
* gfortran.dg/test_common_binding_labels_2_main.f03: Ditto.
* gfortran.dg/test_common_binding_labels_3_main.f03: Ditto.
* gfortran.dg/common_18.f90: New.
* gfortran.dg/common_19.f90: New.
* gfortran.dg/common_20.f90: New.
* gfortran.dg/common_21.f90: New.
From-SVN: r199118
Paolo Carlini [Mon, 20 May 2013 17:13:47 +0000 (17:13 +0000)]
re PR c++/12288 (unintelligible error message for constructor declaration with misspelled type)
/cp
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/12288
* parser.c (cp_parser_parameter_declaration): Check return value
of cp_parser_parse_and_diagnose_invalid_type_name.
/testsuite
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/12288
* g++.dg/parse/error52.C: New.
* g++.dg/parse/error3.C: Adjust.
* g++.dg/parse/error36.C: Likewise.
From-SVN: r199115
Jason Merrill [Mon, 20 May 2013 17:01:16 +0000 (13:01 -0400)]
re PR c++/57319 (bogus "defaulted move assignment for ... calls a non-trivial move assignment operator for virtual base ...")
PR c++/57319
* class.c (vbase_has_user_provided_move_assign): New.
* method.c (synthesized_method_walk): Check it.
* cp-tree.h: Declare it.
From-SVN: r199114
Jason Merrill [Mon, 20 May 2013 17:01:09 +0000 (13:01 -0400)]
re PR c++/57325 (ICE in strip_typedefs, at cp/tree.c:1306)
PR c++/57325
* tree.c (build_cplus_array_type): Copy layout info if element
type is complete.
From-SVN: r199113
Oleg Endo [Mon, 20 May 2013 16:18:44 +0000 (16:18 +0000)]
re PR tree-optimization/56547 ([SH] missed opportunity for fmac with -ffast-math)
PR target/56547
* config/sh/sh.md (fmasf4): Remove empty constraints strings.
(*fmasf4, *fmasf4_media): New insns.
PR target/56547
* gcc.target/sh/pr56547-1.c: New.
* gcc.target/sh/pr56547-2.c: New.
From-SVN: r199110
Paolo Carlini [Mon, 20 May 2013 13:20:39 +0000 (13:20 +0000)]
re PR c++/23608 (constant propagation (CCP) would improve -Wsign-compare)
/cp
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/23608
* call.c (build_new_op_1): Propagate loc to cp_build_binary_op.
/testsuite
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/23608
* g++.dg/warn/Wsign-compare-6.C: New.
* g++.dg/warn/Wdouble-promotion.C: Adjust.
From-SVN: r199102
Jason Merrill [Mon, 20 May 2013 12:28:49 +0000 (08:28 -0400)]
re PR c++/57317 (bogus and unsuppressible warning: 'YYY' has a base 'ZZZ' whose type uses the anonymous namespace)
PR c++/57317
* decl2.c (determine_visibility): Use PRIMARY_TEMPLATE_P to decide
whether a template has its own args.
From-SVN: r199101
Paolo Carlini [Mon, 20 May 2013 09:44:20 +0000 (09:44 +0000)]
re PR c++/57327 ('derived' is an ambiguous base class of 'base' diagnostic is backwards)
/cp
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57327
* pt.c (unify_no_common_base): Swap arg and parm arguments to inform.
/testsuite
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57327
* g++.dg/template/error50.C: New.
From-SVN: r199097
Paolo Carlini [Mon, 20 May 2013 09:41:42 +0000 (09:41 +0000)]
re PR c++/10207 (Empty structure initialization fails under C++ (but works under C))
/cp
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10207
* parser.c (cp_parser_postfix_expression): Use cp_parser_braced_list
instead of cp_parser_initializer_list for compound-literals.
/testsuite
2013-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10207
* g++.dg/ext/complit13.C: New.
From-SVN: r199096
Marc Glisse [Mon, 20 May 2013 07:50:54 +0000 (09:50 +0200)]
re PR c++/57175 (NRVO and alignment)
2013-05-20 Marc Glisse <marc.glisse@inria.fr>
PR c++/57175
gcc/cp/
* typeck.c (check_return_expr): Reverse the alignment comparison.
gcc/testsuite/
* g++.dg/pr57175.C: New testcase.
From-SVN: r199093
GCC Administrator [Mon, 20 May 2013 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199090
Jonathan Wakely [Sun, 19 May 2013 13:31:36 +0000 (13:31 +0000)]
tuple (get): Implement N3670.
* include/std/tuple (get): Implement N3670.
* include/std/utility (get): Likewise.
* testsuite/20_util/pair/get.cc: Move to ...
* testsuite/20_util/pair/astuple/get.cc: Here.
* testsuite/20_util/pair/astuple/astuple.cc: New.
* testsuite/20_util/pair/astuple/constexpr_get.cc: New.
* testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
* testsuite/20_util/pair/astuple/get_by_type.cc: New.
* testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
* testsuite/20_util/pair/astuple/get_neg.cc: New.
* testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
* testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
* testsuite/20_util/tuple/element_access/get_by_type.cc: New.
From-SVN: r199082
Paolo Carlini [Sun, 19 May 2013 10:39:47 +0000 (10:39 +0000)]
2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
* Revert last commit.
From-SVN: r199081
Richard Sandiford [Sun, 19 May 2013 10:16:29 +0000 (10:16 +0000)]
mips.h (BASE_INSN_LENGTH, [...]): New macros.
gcc/
* config/mips/mips.h (BASE_INSN_LENGTH, NOP_INSN_LENGTH): New macros.
* config/mips/mips.c (mips_symbol_insns, mips_address_insns)
(mips_const_insns, mips_split_const_insns, mips_load_store_insns)
(mips_idiv_insns): Update the comments to say that the returned
instruction counts are in units of BASE_INSN_LENGTH.
(mips_adjust_insn_length): Multiply the mips_load_label_num_insns
by BASE_INSN_LENGTH rather than 4. Add the jump separately,
using 2 rather than 4 as the length of indirect MIPS16 and
microMIPS jumps. Use NOP_INSN_LENGTH rather than 4 as the
length of a NOP. Don't divide MIPS16 lengths by 2.
(mips16_split_long_branches): Assume a branch is long if the
length is greater than 4 rather than 8.
* config/mips/mips.md (length): Give MIPS16 lengths directly,
rather than multiplying them by 2. Multiply instruction counts
by BASE_INSN_LENGTH rather than 4.
(*jump_mips16, tls_get_tp_mips16_<mode>)
(*tls_get_tp_mips16_call_<mode>): Divide lengths by 2.
From-SVN: r199080
Uros Bizjak [Sun, 19 May 2013 10:10:58 +0000 (12:10 +0200)]
* ChangeLog: Remove merge marker.
From-SVN: r199079
Richard Sandiford [Sun, 19 May 2013 09:58:02 +0000 (09:58 +0000)]
mips.md (extended_mips16): Remove branch case.
gcc/
* config/mips/mips.md (extended_mips16): Remove branch case.
(length): Remove duplicated extended_mips16 test.
From-SVN: r199078
Richard Sandiford [Sun, 19 May 2013 09:48:57 +0000 (09:48 +0000)]
t-sde: Don't build 64-bit microMIPS multilibs.
gcc/
* config/mips/t-sde: Don't build 64-bit microMIPS multilibs.
From-SVN: r199077
GCC Administrator [Sun, 19 May 2013 00:16:40 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199075
Matthias Klose [Sat, 18 May 2013 23:39:38 +0000 (23:39 +0000)]
Makefile.am (bits_headers): Remove ${bits_host_headers}.
2013-05-19 Matthias Klose <doko@ubuntu.com>
* include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
(ext_headers): Remove ${ext_host_headers}.
(stamp-${host_alias}): Create ${host_builddir}/../ext.
(stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
(install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
* include/Makefile.in: Regenerate.
From-SVN: r199072
Jonathan Wakely [Sat, 18 May 2013 23:11:48 +0000 (23:11 +0000)]
system_error (error_category::error_category()): LWG 2145: Declare public and constexpr.
* include/std/system_error (error_category::error_category()): LWG
2145: Declare public and constexpr.
* src/c++11/system_error.cc (error_category::error_category()): Move
definition to ...
* src/c++11/compatibility-c++0x.cc: Here.
From-SVN: r199071
Jonathan Wakely [Sat, 18 May 2013 23:11:42 +0000 (23:11 +0000)]
* include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
From-SVN: r199070
Jonathan Wakely [Sat, 18 May 2013 20:18:55 +0000 (20:18 +0000)]
unique_ptr.h (make_unique): Declare inline.
* include/bits/unique_ptr.h (make_unique): Declare inline.
(unique_ptr<T[],D>::reset()): Combine two overloads into one.
(default_delete, unique_ptr): Add doxygen comments.
* include/bits/shared_ptr_base.h: Improve doxygen comments.
* include/bits/shared_ptr.h: Likewise.
* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
number.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
From-SVN: r199069
Jonathan Wakely [Sat, 18 May 2013 18:10:01 +0000 (18:10 +0000)]
* doc/xml/manual/status_cxx2011.xml: Fix markup error.
From-SVN: r199066
Jonathan Wakely [Sat, 18 May 2013 16:18:35 +0000 (16:18 +0000)]
utility (exchange): Define.
* include/std/utility (exchange): Define.
* testsuite/20_util/exchange/1.cc: New.
From-SVN: r199061
Jonathan Wakely [Sat, 18 May 2013 15:07:02 +0000 (15:07 +0000)]
unique_ptr.h (make_unique): Define.
* include/bits/unique_ptr.h (make_unique): Define.
* testsuite/20_util/unique_ptr/creation/single.cc: New.
* testsuite/20_util/unique_ptr/creation/array.cc: New.
* testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
From-SVN: r199057
Richard Sandiford [Sat, 18 May 2013 07:58:55 +0000 (07:58 +0000)]
recog.h (Recog_data): Rename to...
gcc/
* recog.h (Recog_data): Rename to...
(recog_data_d): ...this.
(recog_data): Update accordingly.
* recog.c (recog_data): Likewise.
* reload.c (save_recog_data): Likewise.
* config/picochip/picochip.c (picochip_saved_recog_data): Likewise.
(picochip_save_recog_data, picochip_restore_recog_data): Likewise.
From-SVN: r199050
Julian Brown [Sat, 18 May 2013 03:48:18 +0000 (03:48 +0000)]
gcse.c (compute_ld_motion_mems): If a non-simple MEM is found in a REG_EQUAL note, invalidate it.
* gcse.c (compute_ld_motion_mems): If a non-simple MEM is
found in a REG_EQUAL note, invalidate it.
From-SVN: r199049
Easwaran Raman [Sat, 18 May 2013 01:35:04 +0000 (01:35 +0000)]
tree-ssa-reassoc.c (find_insert_point): New function.
2013-05-17 Easwaran Raman <eraman@google.com>
* tree-ssa-reassoc.c (find_insert_point): New function.
(insert_stmt_after): Likewise.
(get_def_stmt): Likewise.
(ensure_ops_are_available): Likewise.
(not_dominated_by): Likewise.
(rewrite_expr_tree): Do not move statements beyond what is
necessary. Remove call to swap_ops_for_binary_stmt...
(reassociate_bb): ... and move it here.
(build_and_add_sum): Assign UIDs for new statements.
(linearize_expr): Likewise.
(do_reassoc): Renumber gimple statement UIDs.
testsuite/ChangeLog:
2013-05-17 Easwaran Raman <eraman@google.com>
* gcc.dg/tree-ssa/reassoc-28.c: New testcase.
From-SVN: r199048
GCC Administrator [Sat, 18 May 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199047
Jan Hubicka [Fri, 17 May 2013 22:20:58 +0000 (00:20 +0200)]
lto-symtab.c (lto_symtab_merge_cgraph_nodes): Resolve cross module weakrefs.
* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Resolve cross module
weakrefs.
* cgraph.c (dump_cgraph_node): Do not ice on unresolved alias.
* cgraphunit.c (handle_alias_pairs): Store target of unresolved weakrefs.
(output_weakrefs): Update.
From-SVN: r199041
Jan Hubicka [Fri, 17 May 2013 22:15:47 +0000 (00:15 +0200)]
lto-partition.c (privatize_symbol_name): Return true when privatizing happened.
* lto-partition.c (privatize_symbol_name): Return true when
privatizing happened.
(rename_statics): Do not go into infinite loop when privatizing
is not needed.
From-SVN: r199040
Po-Chun Chang [Fri, 17 May 2013 21:12:34 +0000 (21:12 +0000)]
re PR middle-end/57276 (Waste work in cgraph_edge_brings_all_agg_vals_for_node())
2013-05-17 Po-Chun Chang <pchang9@cs.wisc.edu>
Martin Jambor <mjambor@suse.cz>
PR middle-end/57276
* ipa-cp.c (cgraph_edge_brings_all_agg_vals_for_node): Break when a
value that corresponds to the given aggval is found in values vector.
Co-Authored-By: Martin Jambor <mjambor@suse.cz>
From-SVN: r199035
Uros Bizjak [Fri, 17 May 2013 20:09:01 +0000 (22:09 +0200)]
driver-i386.c (host_detect_local_cpu): Pass mmx, 3dnow, sse, sse2, sse3, ssse3 and sse4a flags to options.
* config/i386/driver-i386.c (host_detect_local_cpu): Pass mmx, 3dnow,
sse, sse2, sse3, ssse3 and sse4a flags to options.
From-SVN: r199034
David Malcolm [Fri, 17 May 2013 19:23:35 +0000 (19:23 +0000)]
gengtype-state.c: (s_expr_writer): New class, to handle prettifying of output layout of s-expressions.
2013-05-17 David Malcolm <dmalcolm@redhat.com>
* gengtype-state.c: (s_expr_writer): New class, to handle
prettifying of output layout of s-expressions.
(state_writer): New class, to write out gtype.state.
(state_written_type_count): Move this variable into member data of
state_writer.
(s_expr_writer::s_expr_writer): New code: constructor for new class
(state_writer::state_writer(): ditto
(s_expr_writer::write_new_line): New function
(s_expr_writer::write_any_indent): ditto
(s_expr_writer::begin_s_expr): ditto
(s_expr_writer::end_s_expr): ditto
(write_state_fileloc): convert to method of state_writer...
(state_writer:: write_state_fileloc): ...and use methods of
s_expr_writer to write indentation into the gtype.state output file
to visually represent the hierarchical structure of the list
structures
(write_state_fields): ditto, renaming to...
(state_writer::write_state_fields)
(write_state_a_string): ditto, renaming to...
(state_writer::write_state_a_string)
(write_state_string_option): ditto, renaming to...
(state_writer::write_state_string_option)
(write_state_type_option): ditto, renaming to...
(state_writer::write_state_type_option)
(write_state_nested_option): ditto, renaming to...
(state_writer::write_state_nested_option)
(write_state_option): ditto, renaming to...
(state_writer::write_state_option)
(write_state_options): ditto, renaming to...
(state_writer::write_state_options)
(write_state_lang_bitmap): ditto, renaming to...
(state_writer::write_state_lang_bitmap)
(write_state_version): ditto, renaming to...
(state_writer::write_state_version)
(write_state_scalar_type): ditto, renaming to...
(state_writer::write_state_scalar_type)
(write_state_string_type): ditto, renaming to...
(state_writer::write_state_string_type)
(write_state_undefined_type): ditto, renaming to...
(state_writer::write_state_undefined_type)
(write_state_struct_union_type): ditto, renaming to...
(state_writer::write_state_struct_union_type)
(write_state_struct_type): ditto, renaming to...
(state_writer::write_state_struct_type)
(write_state_user_struct_type): ditto, renaming to...
(state_writer::write_state_user_struct_type)
(write_state_lang_struct_type): ditto, renaming to...
(state_writer::write_state_lang_struct_type)
(write_state_param_struct_type): ditto, renaming to...
(state_writer::write_state_param_struct_type)
(write_state_pointer_type): ditto, renaming to...
(state_writer::write_state_pointer_type)
(write_state_array_type): ditto, renaming to...
(state_writer::write_state_array_type)
(write_state_gc_used): ditto, renaming to...
(state_writer::write_state_gc_used)
(write_state_common_type_content): ditto, renaming to...
(state_writer::write_state_common_type_content)
(write_state_type): ditto, renaming to...
(state_writer::write_state_type)
(write_state_pair_list): ditto, renaming to...
(state_writer::write_state_pair_list)
(write_state_pair): ditto, renaming to...
(state_writer::write_state_pair)
(write_state_typedefs): ditto, renaming to...
(state_writer::write_state_typedefs)
(write_state_structures): ditto, renaming to...
(state_writer::write_state_structures)
(write_state_param_structs): ditto, renaming to...
(state_writer::write_state_param_structs)
(write_state_variables): ditto, renaming to...
(state_writer::write_state_variables)
(write_state_srcdir): ditto, renaming to...
(state_writer::write_state_srcdir)
(write_state_files_list): ditto, renaming to...
(state_writer::write_state_files_list)
(write_state_languages): ditto, renaming to...
(state_writer::write_state_languages)
(write_state): create a state_writer instance and use it when
writing out the state file
From-SVN: r199032
Mike Stump [Fri, 17 May 2013 19:12:14 +0000 (19:12 +0000)]
re PR rtl-optimization/57304 (Revision 198896 segfaults building cpu2000 benchmark 176.gcc)
PR rtl-optimization/57304
* web.c (union_match_dups): Ensure that DF_REF_LOC exists before
accessing DF_REF_REAL_LOC.
From-SVN: r199030
Mike Stump [Fri, 17 May 2013 19:09:56 +0000 (19:09 +0000)]
web.c (union_match_dups): Ensure that DF_REF_LOC exists before accessing DF_REF_REAL_LOC.
* web.c (union_match_dups): Ensure that DF_REF_LOC exists before
accessing DF_REF_REAL_LOC.
From-SVN: r199029
David Malcolm [Fri, 17 May 2013 15:53:09 +0000 (15:53 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r199022
Marc Glisse [Fri, 17 May 2013 15:31:02 +0000 (17:31 +0200)]
re PR testsuite/57313 (gcc.dg/binop-xor3.c scan-tree-dump-times)
2013-05-17 Marc Glisse <marc.glisse@inria.fr>
PR testsuite/57313
* gcc.dg/binop-xor3.c: Restrict to platforms known to work (x86).
From-SVN: r199020
Richard Henderson [Fri, 17 May 2013 15:27:37 +0000 (08:27 -0700)]
re PR target/49146 (segv from libgcc_s when raising an exception, or unwinding stack with backtrace with ms_abi)
PR target/49146
* unwind-dw2.c (UNWIND_COLUMN_IN_RANGE): New macro.
(execute_cfa_program): Use it when storing to fs->regs.
From-SVN: r199019
Jakub Jelinek [Fri, 17 May 2013 15:22:24 +0000 (17:22 +0200)]
re PR rtl-optimization/57281 (x86_64-linux loop fails to terminate at -O3 -m32)
PR rtl-optimization/57281
PR rtl-optimization/57300
* config/i386/i386.md (extendsidi2_1 dead reg splitter): Remove.
(extendsidi2_1 peephole2s): Add instead 2 new peephole2s, that undo
what the other splitter did if the registers are dead.
* gcc.dg/pr57300.c: New test.
* gcc.c-torture/execute/pr57281.c: New test.
From-SVN: r199018
Richard Biener [Fri, 17 May 2013 12:47:45 +0000 (12:47 +0000)]
tree-ssa-alias.c (stmt_kills_ref_p_1): Properly compare MEM_REF offsets.
2013-05-17 Richard Biener <rguenther@suse.de>
* tree-ssa-alias.c (stmt_kills_ref_p_1): Properly compare
MEM_REF offsets.
From-SVN: r199014
Paolo Carlini [Fri, 17 May 2013 12:35:44 +0000 (12:35 +0000)]
re PR c++/18126 (sizeof compound-literal not parsed correctly)
/cp
2013-05-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/18126
* parser.c (cp_parser_sizeof_operand): As a GNU Extension, parse
correctly sizeof compound-literal; update comments.
/testsuite
2013-05-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/18126
* g++.dg/ext/sizeof-complit.C: New.
From-SVN: r199012