Jan Hubicka [Sun, 1 Mar 2009 18:47:08 +0000 (19:47 +0100)]
re PR debug/39267 (gdb testsuite regressions)
PR debug/39267
* tree.h (BLOCK_NONLOCALIZED_VARS, BLOCK_NUM_NONLOCALIZED_VARS,
BLOCK_NONLOCALIZED_VAR): New macros.
(tree_block): Add nonlocalized_vars.
* dwarf2out.c (gen_formal_parameter_die, gen_variable_die, gen_decl_die): Add
origin argument; allow generation of die with origin at hand only.
(gen_member_die, gen_type_die_with_usage, force_decl_die,
declare_in_namespace, gen_namescpace_die, dwarf2out_decl): Update use of gen_*.
(gen_block_die): Fix checking for unused blocks.
(process_scope_var): Break out from .... ; work with origins only.
(decls_for_scope) ... here; process nonlocalized list.
(dwarf2out_ignore_block): Look for nonlocalized vars.
* tree-ssa-live.c (remove_unused_scope_block_p): Look for nonlocalized vars.
(dump_scope_block): Dump them.
* tree-inline.c (remap_decls): Handle nonlocalized vars.
(remap_block): Likewise.
(can_be_nonlocal): New predicate.
(copy_bind_expr, copy_gimple_bind): Update use of remap_block.
From-SVN: r144529
Ralf Wildenhues [Sun, 1 Mar 2009 17:49:31 +0000 (17:49 +0000)]
backport: Support GNU/kOpenSolaris.
Backport from git Libtool:
2009-01-19 Robert Millan <rmh@aybabtu.com>
Support GNU/kOpenSolaris.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
GNU/kOpenSolaris.
libjava/classpath/
* configure: Regenerate.
libjava/
* configure: Regenerate.
libssp/
* configure: Regenerate.
libobjc/
* configure: Regenerate.
libstdc++-v3/
* configure: Regenerate.
libgfortran/
* configure: Regenerate.
boehm-gc/
* configure: Regenerate.
gcc/
* configure: Regenerate.
libmudflap/
* configure: Regenerate.
zlib/
* configure: Regenerate.
libffi/
* configure: Regenerate.
libgomp/
* configure: Regenerate.
From-SVN: r144527
Ralf Wildenhues [Sun, 1 Mar 2009 12:20:33 +0000 (12:20 +0000)]
optc-gen.awk: No need to duplicate option flags twice.
gcc/
* optc-gen.awk: No need to duplicate option flags twice.
Reuse help texts for duplicate options which do not have
any.
From-SVN: r144526
Ralf Wildenhues [Sun, 1 Mar 2009 11:29:32 +0000 (11:29 +0000)]
gcc.c (display_help): Document --version.
gcc/
* gcc.c (display_help): Document --version.
From-SVN: r144525
Ralf Wildenhues [Sun, 1 Mar 2009 11:27:41 +0000 (11:27 +0000)]
gcc.c (main): If print_help_list and verbose_flag...
gcc/
* gcc.c (main): If print_help_list and verbose_flag, ensure
driver output comes before subprocess output.
From-SVN: r144524
Ralf Wildenhues [Sun, 1 Mar 2009 11:26:06 +0000 (11:26 +0000)]
optc-gen.awk: Assign all remaining fields to help string...
gcc/
* optc-gen.awk: Assign all remaining fields to help string,
space-separated, for multi-line help in *.opt.
From-SVN: r144523
Ralf Wildenhues [Sun, 1 Mar 2009 11:24:03 +0000 (11:24 +0000)]
check_warning_flags.sh: Update flag exceptions.
contrib/
* check_warning_flags.sh: Update flag exceptions.
gcc/
* doc/invoke.texi (Warning Options): -Wsync-nand is C/C++ only.
-Wno-pedantic-ms-format is for MinGW targets only.
From-SVN: r144522
Ralf Wildenhues [Sun, 1 Mar 2009 11:21:16 +0000 (11:21 +0000)]
options.texi (Option file format): Fix bad indentation, restoring dropped sentence.
gcc/
* doc/options.texi (Option file format): Fix bad indentation,
restoring dropped sentence.
From-SVN: r144518
Jan Hubicka [Sun, 1 Mar 2009 11:05:00 +0000 (12:05 +0100)]
* tree-inline.c (tree_function_versioning): Output debug info.
From-SVN: r144516
Jan Hubicka [Sun, 1 Mar 2009 11:02:30 +0000 (12:02 +0100)]
re PR debug/39267 (gdb testsuite regressions)
PR debug/39267
* tree-inline.c (setup_one_parameter): Do not copy propagate
arguments when not optimizing.
PR debug/39267
* gcc.dg/debug/dwarf2/inline1.c: New testcase.
From-SVN: r144515
Eric Botcazou [Sun, 1 Mar 2009 10:53:17 +0000 (10:53 +0000)]
re PR ada/39264 (gnat.dg/pack3.adb fails on powerpc64/s390x)
PR ada/39264
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
call make_packable_type on fat pointer types.
<E_Array_Subtype>: Likewise.
<E_Record_Subtype>: Call make_packable_type on all record types
except for fat pointer types.
(make_packable_type): Likewise.
(gnat_to_gnu_field): Likewise.
From-SVN: r144514
Eric Botcazou [Sun, 1 Mar 2009 10:51:28 +0000 (10:51 +0000)]
Move entry
From-SVN: r144513
GCC Administrator [Sun, 1 Mar 2009 00:16:55 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144501
H.J. Lu [Sat, 28 Feb 2009 22:29:25 +0000 (22:29 +0000)]
re PR target/39327 (Incorrect addsub/unpck patterns in sse.md)
2009-02-28 H.J. Lu <hongjiu.lu@intel.com>
PR target/39327
* config/i386/sse.md (avx_addsubv8sf3): Correct item bits.
(avx_addsubv4df3): Likewise.
(*avx_addsubv4sf3): Likewise.
(sse3_addsubv4sf3): Likewise.
(*avx_addsubv2df3): Likewise.
(sse3_addsubv2df3): Likewise.
(avx_unpckhps256): Correct item selectors.
(avx_unpcklps256): Likewise.
(avx_unpckhpd256): Likewise.
(avx_unpcklpd256): Likewise.
From-SVN: r144498
Jan Hubicka [Sat, 28 Feb 2009 22:14:43 +0000 (23:14 +0100)]
tree-inline.c (expand_call_inline): Avoid duplicate declarations of static vars.
* tree-inline.c (expand_call_inline): Avoid duplicate declarations of
static vars.
(copy_arguments_for_versioning): If var is declared don't declare it.
(tree_function_versioning): First setup substitutions and then copy
args.
From-SVN: r144497
Jan Hubicka [Sat, 28 Feb 2009 21:34:23 +0000 (22:34 +0100)]
re PR debug/39267 (gdb testsuite regressions)
PR debug/39267
* cgraph.h (varpool_output_debug_info): Remove.
* cgraphunit.c (varpool_output_debug_info): Remove.
* dwarf2out.c (deferred_locations_struct): New struct
(deferred_locations): New type.
(deferred_locations_list): New static var.
(deffer_location): New function.
(gen_variable_die): Use it.
(decls_for_scope): Output info on local static vars.
(dwarf2out_finish): Process deferred locations.
* varpool.c (varpool_output_debug_info): Remove.
From-SVN: r144496
Giovanni Bajo [Sat, 28 Feb 2009 20:47:01 +0000 (20:47 +0000)]
It has been a long time since I updated this....
From-SVN: r144494
Giovanni Bajo [Sat, 28 Feb 2009 18:13:31 +0000 (18:13 +0000)]
add alpha_if_semocolon fix
From-SVN: r144490
Eric Botcazou [Sat, 28 Feb 2009 17:29:55 +0000 (17:29 +0000)]
Makefile.in (cygwin/mingw): Revert accidental EH_MECHANISM change in r130816.
* gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
EH_MECHANISM change in r130816.
From-SVN: r144488
GCC Administrator [Sat, 28 Feb 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144479
Eric Botcazou [Fri, 27 Feb 2009 20:17:29 +0000 (20:17 +0000)]
Fix long lines.
From-SVN: r144476
Jan Hubicka [Fri, 27 Feb 2009 19:49:42 +0000 (20:49 +0100)]
re PR debug/39267 (gdb testsuite regressions)
PR debug/39267
* tree.h (TREE_PROTECTED): Fix comment.
(BLOCK_HANDLER_BLOCK): Remove.
(struct tree_block): Remove handler_block add body_block.
(inlined_function_outer_scope_p): New.
(is_body_block): Remove.
* dbxout.c (dbxout_block): Remove BLOCK_HANDLER_BLOCK.
* dwarf2out.c (is_inlined_entry_point): Remove.
(add_high_low_attributes): Use inlined_function_outer_scope_p.
(gen_block_die): Use is_inlined_entry_point check; remove body block code.
* langhooks.h (struct lang_hooks): Remove no_bodu_blocks.
* gimplify.c (gimplify_expr): Gimplify body blocks.
* tree-ssa-live.c (remove_unused_scope_block_p): Allow removing wrapper block
with multiple subblocks.
(dump_scope_block): Prettier output; dump more flags and info.
(dump_scope_blocks): New.
(remove_unused_locals): Use dump_scope_blocks.
* tree-flow.h (dump_scope_blocks): Declare.
* tree-cfg.c (execute_build_cfg): Dump scope blocks.
* stmt.c (is_body_block): Remove.
* tree-inline.c (remap_block): Copy BODY_BLOCK info.
* langhooks-def.h (LANG_HOOKS_NO_BODY_BLOCKS): Remove.
From-SVN: r144474
Sebastian Pop [Fri, 27 Feb 2009 16:42:38 +0000 (16:42 +0000)]
re PR middle-end/39308 (ICE when compiling with -O[s123] -floop-interchange)
2009-02-27 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/39308
* graphite.c (graphite_loop_normal_form): Do not call
number_of_iterations_exit from a gcc_assert.
From-SVN: r144470
Andreas Krebbel [Fri, 27 Feb 2009 14:56:19 +0000 (14:56 +0000)]
s390.c: (s390_swap_cmp): Look for conditional jumps if COND is NULL.
2009-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc/config/s390/s390.c: (s390_swap_cmp): Look for conditional
jumps if COND is NULL.
(find_cond_jump): New function.
(s390_z10_optimize_cmp): Handling for reg-reg compares added.
* gcc/config/s390/s390.md: Remove z10_cobra attribute value.
From-SVN: r144466
Andreas Schwab [Fri, 27 Feb 2009 14:44:33 +0000 (14:44 +0000)]
Update e-mail address.
From-SVN: r144465
Andreas Schwab [Fri, 27 Feb 2009 09:56:42 +0000 (09:56 +0000)]
Add PR ref.
From-SVN: r144464
Andreas Schwab [Fri, 27 Feb 2009 09:54:25 +0000 (09:54 +0000)]
Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
gcc/ada/:
* Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
* gcc-interface/Makefile.in: Change all uses of $(srcdir),
$(fsrcdir) and $(fsrcpfx) to add ada subdir.
(AWK): Substitute.
(target_cpu_default): Substitute.
gnattools/:
* Makefile.in (fsrcdir): Point to gcc directory, not gcc/ada.
(INCLUDES_FOR_SUBDIR): Adjust.
(ADA_INCLUDES_FOR_SUBDIR): Adjust.
From-SVN: r144463
Tobias Burnus [Fri, 27 Feb 2009 07:45:47 +0000 (08:45 +0100)]
re PR fortran/39309 (.mod file versioning causes error instead of overwritting the file)
2009-02-27 Tobias Burnus <burnus@net-b.de>
PR fortran/39309
* module.c (read_md5_from_module_file): Add missing quote.
From-SVN: r144462
Tobias Burnus [Fri, 27 Feb 2009 06:44:59 +0000 (07:44 +0100)]
re PR fortran/39309 (.mod file versioning causes error instead of overwritting the file)
2009-02-27 Tobias Burnus <burnus@net-b.de>
PR fortran/39309
* module.c (read_md5_from_module_file): Include mod version
in had-changed test.
From-SVN: r144461
GCC Administrator [Fri, 27 Feb 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144460
H.J. Lu [Thu, 26 Feb 2009 19:59:38 +0000 (19:59 +0000)]
re PR c++/37789 (ICE with __FUNCTION__)
gcc/cp
2009-02-26 H.J. Lu <hongjiu.lu@intel.com>
PR c++/37789
* parser.c (cp_parser_mem_initializer): Return error_mark_node
if cp_parser_mem_initializer_id returns error_mark_node.
gcc/testsuite/
2009-02-26 H.J. Lu <hongjiu.lu@intel.com>
PR c++/37789
* other/pr37789.C: New.
From-SVN: r144451
Uros Bizjak [Thu, 26 Feb 2009 18:48:34 +0000 (19:48 +0100)]
alpha.h (alpha_expand_mov): Return false if force_const_mem returns NULL_RTX.
* config/alpha/alpha.h (alpha_expand_mov): Return false if
force_const_mem returns NULL_RTX.
From-SVN: r144450
Paul Thomas [Thu, 26 Feb 2009 18:43:50 +0000 (18:43 +0000)]
re PR fortran/39295 (Too strict interface conformance check)
2009-02-26 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39295
* interface.c (compare_type_rank_if): Return 1 if the symbols
are the same and deal with external procedures where one is
identified to be a function or subroutine by usage but the
other is not.
2009-02-26 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39295
* gfortran.dg/interface_25.f90: New test.
* gfortran.dg/interface_26.f90: New test.
From-SVN: r144449
H.J. Lu [Thu, 26 Feb 2009 15:31:11 +0000 (07:31 -0800)]
Split ChangeLog to ChangeLog-2007 and ChangeLog-2008.
From-SVN: r144448
H.J. Lu [Thu, 26 Feb 2009 15:26:52 +0000 (07:26 -0800)]
Correct year.
From-SVN: r144447
Paul Thomas [Thu, 26 Feb 2009 06:23:42 +0000 (06:23 +0000)]
re PR fortran/39292 (ICE in gfc_conv_array_initializer, at fortran/trans-array.c:3884)
2009-02-26 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39292
* trans-array.c (gfc_conv_array_initializer): Convert all
expressions rather than ICEing.
2009-02-26 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39292
* gfortran.dg/initialization_22.f90: New test.
From-SVN: r144444
GCC Administrator [Thu, 26 Feb 2009 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144442
Andrew John Hughes [Wed, 25 Feb 2009 22:26:47 +0000 (22:26 +0000)]
Add missing class file.
From-SVN: r144437
Andrew John Hughes [Wed, 25 Feb 2009 21:40:28 +0000 (21:40 +0000)]
Sync libgcj with GNU Classpath 0.98.
2009-02-13 Andrew John Hughes <ahughes@redhat.com>
Import GNU Classpath (classpath-0_98-release).
* Makefile.am: Add natVMSecureRandom.cc.
* Makefile.in: Regenerated.
* classpath/ChangeLog,
* classpath/Makefile.am: Merged.
* classpath/Makefile.in: Regenerated.
* classpath/NEWS: Merged.
* classpath/config.guess,
* classpath/config.sub,
* classpath/configure: Regenerated.
* classpath/configure.ac: Merged.
* classpath/gnu/java/awt/peer/gtk/CairoGraphics2D.java,
* classpath/gnu/java/security/jce/prng/SecureRandomAdapter.java,
* classpath/gnu/javax/crypto/jce/prng/ARCFourRandomSpi.java,
* classpath/gnu/javax/crypto/jce/prng/CSPRNGSpi.java,
* classpath/gnu/javax/crypto/jce/prng/FortunaImpl.java,
* classpath/gnu/javax/crypto/jce/prng/ICMRandomSpi.java,
* classpath/gnu/javax/crypto/jce/prng/UMacRandomSpi.java,
* classpath/gnu/javax/crypto/prng/ICMGenerator.java,
* classpath/gnu/xml/stream/XMLParser.java,
* classpath/java/security/SecureRandom.java,
* classpath/native/jni/native-lib/cpproc.c,
* classpath/native/plugin/gcjwebplugin.cc,
* classpath/tools/gnu/classpath/tools/gjdoc/Main.java: Merged.
* configure: Regenerated.
* configure.ac: Add symlink for natVMSecureRandomPosix.cc to natVMSecureRandom.cc
* gnu/classpath/Configuration.java: Change version to 0.98.
* gnu/java/security/jce/prng/SecureRandomAdapter.h: Regenerated.
* gnu/java/security/jce/prng/VMSecureRandom.h: Generated.
* gnu/java/security/jce/prng/VMSecureRandom.java: Added native implementation.
* gnu/java/security/jce/prng/natVMSecureRandomPosix.cc: Wrapper around /dev/random.
* gnu/javax/crypto/jce/prng/CSPRNGSpi.h,
* gnu/javax/crypto/jce/prng/FortunaImpl.h,
* java/security/SecureRandom.h: Regenerated.
* java/security/VMSecureRandom$Spinner.h,
* java/security/VMSecureRandom.h,
* java/security/VMSecureRandom.java: Removed.
* sources.am: Move VMSecureRandom to gnu.java.security.jce.prng.
From-SVN: r144434
Adam Nemet [Wed, 25 Feb 2009 20:14:34 +0000 (20:14 +0000)]
Fixed location of libgomp.exp.
From-SVN: r144433
H.J. Lu [Wed, 25 Feb 2009 18:49:28 +0000 (10:49 -0800)]
re PR rtl-optimization/39241 (ICE in subreg_get_info, at rtlanal.c:3104)
gcc/
2008-02-25 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/39241
* jump.c (rtx_renumbered_equal_p): Remove 2 superfluous calls
to subreg_offset_representable_p.
gcc/testsuite/
2008-02-25 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/39241
* gcc.dg/torture/pr39241.c: New.
From-SVN: r144430
Paolo Bonzini [Wed, 25 Feb 2009 18:12:29 +0000 (18:12 +0000)]
regmove.c (regmove_optimize): Conform to struct rtl_opt_pass execute function prototype.
2009-02-25 Paolo Bonzini <bonzini@gnu.org>
* regmove.c (regmove_optimize): Conform to struct rtl_opt_pass
execute function prototype. Get f and nregs from max_reg_num
and get_insns. Remove the first backward pass as it's dead,
guard the forward pass by flag_expensive_optimizations.
(rest_of_handle_regmove): Delete.
(pass_regmove): Replace it with regmove_optimize.
From-SVN: r144429
Martin Jambor [Wed, 25 Feb 2009 17:34:40 +0000 (18:34 +0100)]
tree-inline.c (initialize_cfun): Remove asserts for calls_setjmp and alls_alloca function flags.
2009-02-25 Martin Jambor <mjambor@suse.cz>
* tree-inline.c (initialize_cfun): Remove asserts for calls_setjmp and
alls_alloca function flags.
(copy_bb): Set calls_setjmp and alls_alloca function flags if such
calls are detected.
From-SVN: r144428
Laurent GUERBY [Wed, 25 Feb 2009 17:22:58 +0000 (17:22 +0000)]
a-teioed.adb (Expand): Fix Result overflow.
2009-02-25 Laurent GUERBY <laurent@guerby.net>
* a-teioed.adb (Expand): Fix Result overflow.
From-SVN: r144427
Laurent GUERBY [Wed, 25 Feb 2009 16:59:13 +0000 (16:59 +0000)]
Makefile.in: Fix multilib handling for sparc64-linux.
2009-02-25 Laurent GUERBY <laurent@guerby.net>
* gcc-interface/Makefile.in: Fix multilib handling for
sparc64-linux.
From-SVN: r144426
Paolo Bonzini [Wed, 25 Feb 2009 14:08:14 +0000 (14:08 +0000)]
regmove.c (discover_flags_reg, [...]): Delete.
2009-02-25 Paolo Bonzini <bonzini@gnu.org>
* regmove.c (discover_flags_reg, flags_set_1, mark_flags_life_zones,
flags_set_1_rtx, flags_set_1_set): Delete.
(regmove_optimize): Do not call mark_flags_life_zones.
From-SVN: r144425
Julian Brown [Wed, 25 Feb 2009 07:18:01 +0000 (07:18 +0000)]
re PR target/35965 ([4.3 only] -fstack-protector produces segfaulting binaries on arm/armel)
2009-02-24 Julian Brown <julian@codesourcery.com>
PR target/35965
* config/arm/arm.c (require_pic_register): Only set
cfun->machine->pic_reg once per function.
Patch commited by Doug Kwan <dougkwan@google.com>
From-SVN: r144424
Sandra Loosemore [Wed, 25 Feb 2009 01:44:45 +0000 (20:44 -0500)]
invoke.texi (Link Options): Document an easier way to pass options that take arguments to the GNU linker...
2009-02-24 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (Link Options): Document an easier way to pass
options that take arguments to the GNU linker using -Xlinker and
-Wl.
From-SVN: r144423
GCC Administrator [Wed, 25 Feb 2009 00:17:07 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r144421
Michael Eager [Wed, 25 Feb 2009 00:12:42 +0000 (00:12 +0000)]
Fix typo.
From-SVN: r144418
Steve Ellcey [Tue, 24 Feb 2009 16:28:07 +0000 (16:28 +0000)]
re PR target/33785 (TARGET_C99_FUNCTIONS default wrong in tm.texi)
PR target/33785
* doc/tm.texi (TARGET_C99_FUNCTIONS): Fix description.
From-SVN: r144411
Michael Eager [Tue, 24 Feb 2009 16:20:22 +0000 (16:20 +0000)]
Add self to MAINTAINERS.
From-SVN: r144410
Richard Guenther [Tue, 24 Feb 2009 14:50:30 +0000 (14:50 +0000)]
re PR c++/39242 (Inconsistent reject / accept of code)
2009-02-24 Richard Guenther <rguenther@suse.de>
PR c++/39242
* pt.c (instantiate_decl): Do not instantiate extern, non-inline
declared functions.
* g++.dg/template/instantiate10.C: New testcase.
From-SVN: r144408
Richard Guenther [Tue, 24 Feb 2009 14:47:30 +0000 (14:47 +0000)]
re PR debug/39285 (Missing debug info for enum members in C++)
2009-02-24 Richard Guenther <rguenther@suse.de>
PR debug/39285
* dwarf2out.c (gen_enumeration_type_die): Handle CONST_DECLs.
From-SVN: r144407
Richard Guenther [Tue, 24 Feb 2009 11:05:15 +0000 (11:05 +0000)]
re PR tree-optimization/39233 (ivopts + vrp miscompilation)
2009-02-24 Richard Guenther <rguenther@suse.de>
Zdenek Dvorak <ook@ucw.cz>
PR tree-optimization/39233
* tree-ssa-loop-ivopts.c (add_candidate_1): Do not except pointers
from converting them to a generic type.
* gcc.c-torture/execute/pr39233.c: New testcase.
Co-Authored-By: Zdenek Dvorak <ook@ucw.cz>
From-SVN: r144405
Sebastian Pop [Tue, 24 Feb 2009 06:47:56 +0000 (06:47 +0000)]
re PR middle-end/39260 (Failed to build lame-3.98-2 source with graphite)
2009-02-23 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/39260
* graphite.c (harmful_stmt_in_bb): Stop a SCoP when the basic block
contains a condition with a real type.
(build_scop_conditions_1): Conditions are always last_stmt of a bb.
* gcc.dg/graphite/pr39260.c: New.
From-SVN: r144403
H.J. Lu [Tue, 24 Feb 2009 05:29:04 +0000 (05:29 +0000)]
static-init1.C: Replace int with __PTRDIFF_TYPE__.
2009-02-23 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/init/static-init1.C: Replace int with __PTRDIFF_TYPE__.
From-SVN: r144402
GCC Administrator [Tue, 24 Feb 2009 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144399
H.J. Lu [Mon, 23 Feb 2009 22:34:50 +0000 (22:34 +0000)]
re PR c++/36411 (ICE with invalid template template parameter)
gcc/cp
2009-02-23 H.J. Lu <hongjiu.lu@intel.com>
PR c++/36411
* pt.c (coerce_template_template_parms): Return 0 if parameter
is error_mark_node.
gcc/testsuite/
2009-02-23 H.J. Lu <hongjiu.lu@intel.com>
PR c++/36411
* g++.dg/template/void14.C: New.
From-SVN: r144396
Jason Merrill [Mon, 23 Feb 2009 21:23:58 +0000 (16:23 -0500)]
re PR c++/38880 (g++.dg/init/const7.C XFAILed)
PR c++/38880
* varasm.c (initializer_constant_valid_p) [PLUS_EXPR]: Check
narrowing_initializer_constant_valid_p.
(narrowing_initializer_constant_valid_p): Don't return
null_pointer_node for adding a pointer to itself.
From-SVN: r144395
Adam Nemet [Mon, 23 Feb 2009 20:42:53 +0000 (20:42 +0000)]
abi.exp: Add multilib support.
* testsuite/libstdc++-abi/abi.exp: Add multilib support.
* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove MULTISUBDIR
from baseline_dir.
* configure: Regenerate.
* testsuite/Makefile.am (baseline_file): Remove variable.
(site.exp): Set baseline_dir rather than baseline_file.
(check-abi): Pass AM_RUNTESTFLAGS and RUNTESTFLAGS to runtest.
* testsuite/Makefile.in: Regenerate.
From-SVN: r144394
Jason Merrill [Mon, 23 Feb 2009 20:28:50 +0000 (15:28 -0500)]
pt.c (unify): Call maybe_adjust_types_for_deduction when deducing from an initializer list.
* pt.c (unify): Call maybe_adjust_types_for_deduction when
deducing from an initializer list.
From-SVN: r144392
Jan Hubicka [Mon, 23 Feb 2009 16:46:32 +0000 (17:46 +0100)]
re PR c/12245 (Uses lots of memory when compiling large initialized arrays)
PR c/12245
* ggc.h (htab_create_ggc): Use ggc_free to free hashtable when resizing.
From-SVN: r144384
Rainer Orth [Mon, 23 Feb 2009 16:37:20 +0000 (16:37 +0000)]
* s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
From-SVN: r144382
Jan Hubicka [Mon, 23 Feb 2009 13:10:53 +0000 (14:10 +0100)]
re PR tree-optimization/37709 (inlining causes explosion in debug info)
PR tree-optimization/37709
* tree.c (block_ultimate_origin): Move here from dwarf2out.
* tree.h (block_ultimate_origin): Declare.
* dwarf2out.c (block_ultimate_origin): Move to tree.c
* tree-ssa-live.c (remove_unused_scope_block_p):
Eliminate blocks containig no instructions nor live variables nor
nested blocks.
(dump_scope_block): New function.
(remove_unused_locals): Enable removal of dead blocks by default;
enable dumping at TDF_DETAILS.
From-SVN: r144381
GCC Administrator [Mon, 23 Feb 2009 00:16:38 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144379
Mark Mitchell [Sun, 22 Feb 2009 18:43:30 +0000 (18:43 +0000)]
make-temp-file.c (<windows.h>): Include on Windows.
* make-temp-file.c (<windows.h>): Include on Windows.
(choose_tmpdir): On Windows, use GetTempPath.
From-SVN: r144375
Joseph Myers [Sun, 22 Feb 2009 17:04:04 +0000 (17:04 +0000)]
* zh_CN.po: Update.
From-SVN: r144374
H.J. Lu [Sun, 22 Feb 2009 01:10:29 +0000 (01:10 +0000)]
i386.c (classify_argument): Don't allow COImode and OImode.
2008-02-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (classify_argument): Don't allow COImode
and OImode.
(function_arg_advance_32): Don't allow OImode.
(function_arg_32): Likewise.
(function_value_32): Likewise.
(return_in_memory_32): Likewise.
(function_arg_64): Remove OImode comment.
From-SVN: r144367
H.J. Lu [Sun, 22 Feb 2009 00:44:23 +0000 (00:44 +0000)]
re PR target/39261 (_mm256_set_epi64x failed on 32bit)
2008-02-21 H.J. Lu <hongjiu.lu@intel.com>
PR target/39261
* config/i386/i386.c (ix86_expand_vector_init_one_nonzero): Use
ix86_expand_vector_set for V4DImode in 64bit mode only.
(ix86_expand_vector_init_one_var): Likewise.
From-SVN: r144366
GCC Administrator [Sun, 22 Feb 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144365
Thomas Koenig [Sat, 21 Feb 2009 22:25:06 +0000 (22:25 +0000)]
re PR fortran/38914 ([4.3 only] ICE with array inquiry functions above contains in parameter expression)
2008-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/38914
* array.c (ref_dimen_size): Rename to gfc_ref_dimen_size,
make global. Change function name in error messages.
(ref_size): Change ref_dimen_size to gfc_ref_dimen_size.
(gfc_array_ref_shape): Likewise.
* gfortran.h: Add prototype for gfc_ref_dimen_size.
* simplify.c (simplify_bound_dim): Add ref argument.
If the reference isn't a full array, return one for
the lower bound and the extent for the upper bound.
(simplify_bound): For array sections, take as from the
argument. Add reference to all to simplify_bound_dim.
2008-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/38914
* bound_simplification_2.f90: New test case.
* bound_7.f90: New test case.
From-SVN: r144362
Joseph Myers [Sat, 21 Feb 2009 21:25:39 +0000 (21:25 +0000)]
lex.c (lex_string): Return a CPP_LESS token for missing '>' in a header name.
libcpp:
* lex.c (lex_string): Return a CPP_LESS token for missing '>' in a
header name.
(_cpp_lex_direct): Handle this.
gcc/testsuite:
* gcc.dg/cpp/include4.c: New test.
From-SVN: r144361
H.J. Lu [Sat, 21 Feb 2009 19:08:44 +0000 (11:08 -0800)]
Mention PR bootstrap/39257.
From-SVN: r144360
Sebastian Pop [Sat, 21 Feb 2009 17:09:35 +0000 (17:09 +0000)]
graphite.c (graphite_trans_loop_block): Adjust tile size to 51.
2009-02-21 Sebastian Pop <sebastian.pop@amd.com>
* graphite.c (graphite_trans_loop_block): Adjust tile size to 51.
From-SVN: r144358
Richard Sandiford [Sat, 21 Feb 2009 16:48:05 +0000 (16:48 +0000)]
Revert last change.
From-SVN: r144357
H.J. Lu [Sat, 21 Feb 2009 15:55:53 +0000 (07:55 -0800)]
re PR target/39256 (__m256 isn't returned in ymm0 in 32bit)
gcc/
2008-02-21 H.J. Lu <hongjiu.lu@intel.com>
PR target/39256
* config/i386/i386.c (type_natural_mode): Remove an extra
space in the warning message.
(function_value_32): Handle 32-byte vector modes.
(return_in_memory_32): Likewise.
gcc/testsuite/
2008-02-21 Uros Bizjak <ubizjak@gmail.com>
PR target/39256
* gcc.target/i386/abi-2.c: New.
From-SVN: r144355
Kaz Kojima [Sat, 21 Feb 2009 12:33:00 +0000 (12:33 +0000)]
pr39228.x: New.
* gcc.c-torture/execute/pr39228.x: New.
From-SVN: r144353
Gerald Pfeifer [Sat, 21 Feb 2009 11:12:28 +0000 (11:12 +0000)]
update_version_svn (ADD_BRANCHES): Remove autovect-branch and document format.
* update_version_svn (ADD_BRANCHES): Remove autovect-branch
and document format.
From-SVN: r144352
Uros Bizjak [Sat, 21 Feb 2009 09:34:36 +0000 (10:34 +0100)]
abi-1.c: Use scan-assembler-times "..." 1 instead of scan-assembler to check for xmm0...
* gcc.target/i386/abi-1.c: Use scan-assembler-times "..." 1 instead of
scan-assembler to check for xmm0 register.
From-SVN: r144349
Richard Sandiford [Sat, 21 Feb 2009 09:15:13 +0000 (09:15 +0000)]
loop-iv.c (truncate_value): New function.
gcc/
* loop-iv.c (truncate_value): New function.
(iv_subreg, get_iv_value, iv_number_of_iterations): Use it instead
of lowpart_subreg.
(lowpart_subreg): Move to...
* emit-rtl.c: ...here.
From-SVN: r144348
Benjamin Kosnik [Sat, 21 Feb 2009 03:56:21 +0000 (03:56 +0000)]
this_thread: Move...
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/30_threads/thread/this_thread: Move...
* testsuite/30_threads/this_thread: ...here.
* testsuite/20_util/unique_ptr/assign/assign.cc: Move...
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: ...here.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Move...
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: ...here.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Move...
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: ...here.
From-SVN: r144346
Danny Smith [Sat, 21 Feb 2009 03:21:44 +0000 (03:21 +0000)]
winnt.c (i386_pe_asm_output_aligned_decl_common): Revert accidental And undocumented change at revision 140860.
* config/i386/winnt.c (i386_pe_asm_output_aligned_decl_common): Revert
accidental And undocumented change at revision 140860.
From-SVN: r144345
Joseph Myers [Sat, 21 Feb 2009 02:18:01 +0000 (02:18 +0000)]
arm.c (arm_gimplify_va_arg_expr): Update prototype to take gimple_seq * arguments.
* config/arm/arm.c (arm_gimplify_va_arg_expr): Update prototype to
take gimple_seq * arguments.
(arm_mangle_type): Use CONST_CAST_TREE on type argument passed to
types_compatible_p langhook.
From-SVN: r144344
Benjamin Kosnik [Sat, 21 Feb 2009 00:45:21 +0000 (00:45 +0000)]
user.cfg.in: Tweaks.
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Tweaks.
* doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
be elsewhere.
* include/tr1_impl/unordered_map: Just use most specialized
container module.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_bvector.h: Same.
* include/backward/binders.h: Change binder module to binders.
* include/std/complex: Add complex_numers module.
* include/tr1_impl/complex: Same.
* include/std/valarray: Add numeric_arrays module.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/allocator.h: Add allocators module.
* include/ext/throw_allocator.h
* include/ext/pool_allocator.h
* include/ext/bitmap_allocator.h
* include/ext/new_allocator.h
* include/ext/malloc_allocator.h
* include/ext/array_allocator.h
* include/ext/mt_allocator.h
* include/ext/debug_allocator.h
* include/ext/extptr_allocator.h
* include/tr1_impl/functional: Move namespace markup here.
* include/tr1_impl/regex: Same.
* include/tr1_impl/type_traits: Add metaprogramming module.
* include/std/type_traits: Same.
* include/std/memory: Add memory module.
* include/std/ratio: Add ratio module.
* include/std/chrono: Move namespace markup here, add time module.
* include/std/thread: Move namespace markup here, add concurrency
module.
* include/std/mutex: Use concurrency module.
* include/std/condition_variable: Same.
* include/bits/ios_base.h: Refine io module.
* include/bits/basic_ios.h: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Correct parameter markup.
* include/bits/shared_ptr.h: Add pointer_abstractions module.
* include/bits/unique_ptr.h: Same.
* include/bits/algorithmfwd.h: Add mutating_algorithms,
non_mutating_algorithms, sorting_algorithms. Adjust nesting.
* include/bits/stl_heap.h: Add markup for new groupings.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/c_compatibility/stdatomic.h: Add atomics module.
* include/c_global/cstdatomic: Same.
* libsupc++/exception: Add exceptions module.
* libsupc++/typeinfo: Same.
* libsupc++/new: Same.
* libsupc++/exception_ptr.h: Same.
* include/std/system_error: Same.
* include/std/stdexcept: Same.
* libsupc++/cxxabi.h: Move doxygroups.cc markup here.
* libsupc++/cxxabi-forced.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/duration/cons/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
From-SVN: r144343
GCC Administrator [Sat, 21 Feb 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144341
Jakub Jelinek [Fri, 20 Feb 2009 15:20:38 +0000 (16:20 +0100)]
Update Copyright years for files modified in 2008 and/or 2009.
From-SVN: r144324
Mark Mitchell [Fri, 20 Feb 2009 15:19:38 +0000 (15:19 +0000)]
arm.c (arm_builtin_va_list): New function.
2009-02-20 Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* config/arm/arm.c (arm_builtin_va_list): New function.
(arm_expand_builtin_va_start): Likewise.
(arm_gimplify_va_arg_expr): Likewise.
(TARGET_BUILD_BUILTIN_VA_LIST): Define.
(TARGET_BUILD_BUILTIN_VA_START): Likewise.
(TARGET_BUILD_BUILTIN_VA_ARG_EXPR): Likewise.
(va_list_type): New variable.
(arm_mangle_type): Mangle va_list_type appropriately.
testsuite:
* gcc.target/arm/va_list.c: New test.
* g++.dg/abi/arm_va_list.C: Likewise.
* lib/target-supports.exp (check_effective_target_arm_eabi): New
function.
* g++.dg/cpp0x/temp-va-arg-bug.C, g++.dg/other/stdarg1.C,
g++.dg/warn/miss-format-1.C, g++.dg/warn/miss-format-3.C,
g++.dg/warn/miss-format-4.C, g++.dg/warn/miss-format-5.C,
g++.dg/warn/miss-format-6.C, g++.old-deja/g++.other/vaarg2.C,
g++.old-deja/g++.other/vaarg3.C, g++.old-deja/g++.other/vaarg4.C,
g++.old-deja/g++.pt/builtin.C: Use -Wno-abi on ARM EABI targets.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r144323
Jakub Jelinek [Fri, 20 Feb 2009 12:56:01 +0000 (13:56 +0100)]
re PR middle-end/39157 (Code that compiles fine in 1GB of memory with 4.1.2 requires > 20GB in 4.2.* and higher)
PR middle-end/39157
* Makefile.in (loop-invariant.o): Depend on $(PARAMS_H).
* params.h (LOOP_INVARIANT_MAX_BBS_IN_LOOP): Define.
* params.def (loop-invariant-max-bbs-in-loop): New parameter.
* opts.c (decode_options): Set loop-invariant-max-bbs-in-loop
parameter to 1000 for -O1 by default.
* doc/invoke.texi (loop-invariant-max-bbs-in-loop): Document new
parameter.
* loop-invariant.c: Include params.h.
(move_loop_invariants): Don't call move_single_loop_invariants on
very large loops.
From-SVN: r144320
Jack Howarth [Fri, 20 Feb 2009 11:25:42 +0000 (12:25 +0100)]
re PR testsuite/38164 (gcc.target/i386/amd64-abi-3.c fails at -m64 on i686-apple-darwin9)
PR testsuite/38164
* gcc.target/i386/amd64-abi-3.c: Add -fomit-frame-pointer
to dg-options.
From-SVN: r144318
Jaka Mocnik [Fri, 20 Feb 2009 11:19:34 +0000 (12:19 +0100)]
calls.c (emit_library_call_value_1): Use slot_offset instead of offset when calculating bounds for indexing...
* calls.c (emit_library_call_value_1): Use slot_offset instead of
offset when calculating bounds for indexing stack_usage_map. Fixes
a buffer overflow with certain target setups.
From-SVN: r144317
Jakub Jelinek [Fri, 20 Feb 2009 10:13:17 +0000 (11:13 +0100)]
re PR target/39240 (Invalid sibcall optimization with promoted return types and differing signedness)
PR target/39240
* calls.c (expand_call): Clear try_tail_call if caller and callee
disagree in promotion of function return value.
* gcc.c-torture/execute/pr39240.c: New test.
From-SVN: r144316
Jason Merrill [Fri, 20 Feb 2009 05:32:40 +0000 (00:32 -0500)]
re PR c++/39225 (ICE if destructor doen't match class name)
PR c++/39225
* decl.c (grokdeclarator): Handle ~identifier.
From-SVN: r144314
GCC Administrator [Fri, 20 Feb 2009 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r144311
Kazu Hirata [Thu, 19 Feb 2009 21:33:38 +0000 (21:33 +0000)]
* gcc.c-torture/execute/
20090219-1.c: New.
From-SVN: r144307
Adam Nemet [Thu, 19 Feb 2009 21:26:34 +0000 (21:26 +0000)]
mips.exp: Comment !CPU in the isa* pseudo-options.
* gcc.target/mips/mips.exp: Comment !CPU in the isa* pseudo-options.
(mips-dg-options): When matching isa* pseudo-options make
'value' optional and accept ! entries. Use $spec instead of
$isa_spec in the isa pseudo-option error message. Only
perform the ISA-range check when 'value' is set. If arch is
matching any CPU in the ! entries switch to its generic ISA.
* gcc.target/mips/branch-1.c: Pass isa=!octeon.
* gcc.target/mips/dmult-1.c: Pass isa=64!octeon rather than
-mips64.
From-SVN: r144306
Jakub Jelinek [Thu, 19 Feb 2009 21:15:12 +0000 (22:15 +0100)]
re PR target/39175 (ICE while compiling qt-4.5.0-rc1)
PR target/39175
* c-common.c (c_determine_visibility): If visibility changed and
DECL_RTL has been already set, call make_decl_rtl to update symbol
flags.
* decl2.c (determine_visibility): If visibility changed and
DECL_RTL has been already set, call make_decl_rtl to update symbol
flags.
* gcc.dg/visibility-20.c: New test.
* g++.dg/ext/visibility/visibility-11.C: New test.
From-SVN: r144305
Daniel Franke [Thu, 19 Feb 2009 18:23:20 +0000 (13:23 -0500)]
scanner.c (load_line): At end of line, skip '\r' without setting the truncation flag.
2009-02-19 Daniel Franke <franke.daniel@gmail.com>
* scanner.c (load_line): At end of line, skip '\r' without setting
the truncation flag.
From-SVN: r144303
H.J. Lu [Thu, 19 Feb 2009 15:22:28 +0000 (15:22 +0000)]
re PR c++/39188 (G++ doesn't handle static anonymous union right)
gcc/
2009-02-19 H.J. Lu <hongjiu.lu@intel.com>
PR c++/39188
* varasm.c (assemble_variable): Don't check DECL_NAME when
globalizing a variable.
gcc/cp/
2009-02-19 H.J. Lu <hongjiu.lu@intel.com>
PR c++/39188
* cp-tree.h (maybe_commonize_var): New.
* decl.c (maybe_commonize_var): Make it extern.
* decl2.c (finish_anon_union): Call maybe_commonize_var.
gcc/testsuite/
2009-02-19 H.J. Lu <hongjiu.lu@intel.com>
PR c++/39188
* g++.dg/abi/pr39188-1a.C: New.
* g++.dg/abi/pr39188-1b.C: Likewise.
* g++.dg/abi/pr39188-1.h: Likewise.
* g++.dg/abi/pr39188-2a.C: Likewise.
* g++.dg/abi/pr39188-2b.C: Likewise.
* g++.dg/abi/pr39188-2.h: Likewise.
* g++.dg/abi/pr39188-3a.C: Likewise.
* g++.dg/abi/pr39188-3b.C: Likewise.
* g++.dg/abi/pr39188-3.h: Likewise.
From-SVN: r144297
Joseph Myers [Thu, 19 Feb 2009 13:56:00 +0000 (13:56 +0000)]
re PR c/38483 (generated aborts lose previous side-effects)
PR c/38483
* builtins.c (gimplify_va_arg_expr): Evaluate the va_list
expression before any __builtin_trap call.
* c-typeck.c (build_function_call): Convert and check function
arguments before generating a call to a trap. Evaluate the
function arguments before the trap.
testsuite:
* gcc.c-torture/execute/call-trap-1.c,
gcc.c-torture/execute/va-arg-trap-1.c, gcc.dg/call-diag-1.c: New
tests.
From-SVN: r144296