[Bug bootstrap/45444] [4.6 regression] ARM bootstrap failure: uninitialized const member in 'neon_builtin_datum' is invalid in C++ [-Werror=c++-compat]
--- Comment #4 from amylaar at gcc dot gnu dot org 2010-09-01 09:38 --- The 'uninitialized const members' warning also affects cross builds when using --enable-build-with-cxx, see PR44670 -- amylaar at gcc dot gnu dot org changed: What|Removed |Added OtherBugsDependingO||44433 nThis|| GCC host triplet|armv5tel-unknown-linux- |armv5tel-unknown-linux- |gnueabi |gnueabi, i686-pc-linux-gnu GCC target triplet||*-arm-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45444
[Bug testsuite/42843] --enable-build-with-cxx plugin tests fail
--- Comment #20 from amylaar at gcc dot gnu dot org 2010-07-14 20:23 --- (In reply to comment #11) I wonder if there is any overlap with this bug and PR29404/42308? libiberty doesn't use $(toplevel_builddir)/gcc/site.exp, so there is no direct connection, but libiberty/Makefile.in also has CC = @CC@, where $(CC) is not the same as @CC@ if the former is overridden by the toplevel Makefile. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42843
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #56 from amylaar at gcc dot gnu dot org 2010-07-13 21:56 --- Subject: Bug 44832 Author: amylaar Date: Tue Jul 13 21:55:57 2010 New Revision: 162156 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=162156 Log: gcc: PR other/44874 * tree-dump.c (dump_options): Add enumerate_locals entry. Add TDF_NOID exclusion to all entry. * tree-dump.h (dump_enumerated_decls): Declare. * tree-pretty-print.c (dump_generic_node): For TDF_NOID, Don't display type uid. (print_declaration): Don't crash on TREE_TYPE (t) == 0. * tree-pass.h (TDF_ENUMERATE_LOCALS): Define. * tree-ssa-live.c: Include gimple.h. (numbered_tree_d): New struct. (numbered_tree): New typedef. (DEF_VEC_O (numbered_tree): New. (DEF_VEC_ALLOC_O (numbered_tree, heap)): Likewise. (compare_decls_by_uid, dump_enumerated_decls_push): New functions. (dump_enumerated_decls): Likewise. * tree-optimize.c (execute_cleanup_cfg_post_optimizing): If comparing debug info and flag_dump_final_insns, call dump_enumerated_decls. * tree-cfg.c (dump_function_to_file): Call dump_enumerated_decls. * Makefile.in (tree-ssa-live.o): Depend on $(GIMPLE_H). gcc/testsuite: PR other/44874 PR debug/44832 * c-c++-common/pr44832.c: New test. Added: trunk/gcc/testsuite/c-c++-common/pr44832.c Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-cfg.c trunk/gcc/tree-dump.c trunk/gcc/tree-dump.h trunk/gcc/tree-optimize.c trunk/gcc/tree-pass.h trunk/gcc/tree-pretty-print.c trunk/gcc/tree-ssa-live.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug other/44874] TDF_NOUID dumps miss information about DECL_UID ordering
--- Comment #2 from amylaar at gcc dot gnu dot org 2010-07-13 21:56 --- Subject: Bug 44874 Author: amylaar Date: Tue Jul 13 21:55:57 2010 New Revision: 162156 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=162156 Log: gcc: PR other/44874 * tree-dump.c (dump_options): Add enumerate_locals entry. Add TDF_NOID exclusion to all entry. * tree-dump.h (dump_enumerated_decls): Declare. * tree-pretty-print.c (dump_generic_node): For TDF_NOID, Don't display type uid. (print_declaration): Don't crash on TREE_TYPE (t) == 0. * tree-pass.h (TDF_ENUMERATE_LOCALS): Define. * tree-ssa-live.c: Include gimple.h. (numbered_tree_d): New struct. (numbered_tree): New typedef. (DEF_VEC_O (numbered_tree): New. (DEF_VEC_ALLOC_O (numbered_tree, heap)): Likewise. (compare_decls_by_uid, dump_enumerated_decls_push): New functions. (dump_enumerated_decls): Likewise. * tree-optimize.c (execute_cleanup_cfg_post_optimizing): If comparing debug info and flag_dump_final_insns, call dump_enumerated_decls. * tree-cfg.c (dump_function_to_file): Call dump_enumerated_decls. * Makefile.in (tree-ssa-live.o): Depend on $(GIMPLE_H). gcc/testsuite: PR other/44874 PR debug/44832 * c-c++-common/pr44832.c: New test. Added: trunk/gcc/testsuite/c-c++-common/pr44832.c Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-cfg.c trunk/gcc/tree-dump.c trunk/gcc/tree-dump.h trunk/gcc/tree-optimize.c trunk/gcc/tree-pass.h trunk/gcc/tree-pretty-print.c trunk/gcc/tree-ssa-live.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44874
[Bug other/44874] TDF_NOUID dumps miss information about DECL_UID ordering
--- Comment #3 from amylaar at gcc dot gnu dot org 2010-07-14 04:24 --- Fixed in trunk. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44874
[Bug rtl-optimization/44752] insn-automata.c: empty translation unit
--- Comment #7 from amylaar at gcc dot gnu dot org 2010-07-12 17:16 --- Subject: Bug 44752 Author: amylaar Date: Mon Jul 12 17:16:38 2010 New Revision: 162083 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=162083 Log: PR rtl-optimization/44752 * genautomata.c (main): Don't emit an empty file even if there is no automaton. Modified: trunk/gcc/ChangeLog trunk/gcc/genautomata.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug rtl-optimization/44752] insn-automata.c: empty translation unit
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-07-12 19:51 --- Fixed in trunk r162083. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug testsuite/42843] --enable-build-with-cxx plugin tests fail
--- Comment #15 from amylaar at gcc dot gnu dot org 2010-07-12 22:25 --- COMPILER is based on $(CC) / $(CXX), which during testing are overridden to become the host compiler, i.e. stage 0 for a bootstrap, so to speak. We want to use @CC@ / @CXX@ to use the same compiler that the latest compiler binaries (cc1 etc.) were built with. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added CC||ro at gcc dot gnu dot org Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42843
[Bug testsuite/42843] --enable-build-with-cxx plugin tests fail
--- Comment #16 from amylaar at gcc dot gnu dot org 2010-07-12 22:40 --- Created an attachment (id=21188) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21188action=view) proposed patch This patch should restore the use of the previous stage compiler for plugins. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42843
[Bug bootstrap/44921] [4.6 Regression] Failed to bootstrap
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added CC||amylaar at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-07-12 22:44:40 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44921
[Bug bootstrap/44921] [4.6 Regression] Failed to bootstrap
--- Comment #2 from amylaar at gcc dot gnu dot org 2010-07-12 22:54 --- (In reply to comment #1) This patch: Index: postreload.c === --- postreload.c(revision 162085) +++ postreload.c(working copy) @@ -1281,7 +1281,7 @@ move2add_use_add3_insn (rtx reg, rtx sym rtx src = SET_SRC (pat); int regno = REGNO (reg); int min_cost = INT_MAX; - int min_regno; + int min_regno = -1; bool speed = optimize_bb_for_speed_p (BLOCK_FOR_INSN (insn)); int i; @@ -1317,7 +1317,7 @@ move2add_use_add3_insn (rtx reg, rtx sym } } - if (min_cost rtx_cost (src, SET, speed)) + if (min_regno = 0 min_cost rtx_cost (src, SET, speed)) { rtx tem; works for me. The variable can not actually be used uninitalized, since min_cost is initalized to INT_MAX, and the return type of rtx_cost is int. So it is enough to shut up the compiler warning, no need to add an extra test there. I.e. the first hunk should be sufficient. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44921
[Bug bootstrap/44921] [4.6 Regression] Failed to bootstrap
--- Comment #5 from amylaar at gcc dot gnu dot org 2010-07-12 23:45 --- (In reply to comment #3) Does the first chunk count as obvious? I'd say yes. My boostraps using that hunk with and without --enable-build-with-cxx on i686-pc-linux-gnu have progressed past the stage2/stage3 comparison. (In reply to comment #4) int min_regno = 0; is faster. Yes, it's a cheaper constant on a number of processors in term of size and speed. If we really care about compiler run-time efficiency here (and efficiency for programs that use the same warning regime), we should introduce an attribute to tell the compiler to treat a variable as initialized even if it isn't, so that attribute can be used in these cases of the variable always being assigned before used even if no proof exists inside the rule system of the compiler. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44921
[Bug testsuite/44898] New: The guality testsuite has system-load dependent results
Some test cases in the guality testsuite change between UNSUPPORTED and PASS/FAIL depending on system load. I have observed this today on gcc16. Dave Korn has posted an analysis here: http://gcc.gnu.org/ml/gcc/2010-04/msg00742.html I concur that we should test for gdb being unable to understand the debug information first. The gdb-test procedure has a fixed set of commands, so there should be no unrelated error message popping up later. -- Summary: The guality testsuite has system-load dependent results Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: testsuite AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44898
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #54 from amylaar at gcc dot gnu dot org 2010-07-10 09:40 --- Subject: Bug 44832 Author: amylaar Date: Sat Jul 10 09:40:36 2010 New Revision: 162035 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=162035 Log: 2010-07-10 Richard Guenther rguent...@suse.de Joern Rennecke joern.renne...@embecosm.com PR debug/44832 * tree-ssa-live.c (mark_all_vars_used_1): Set TREE_USED for LABEL_DECL. (remove_unused_scope_block_p): Don't drop TREE_USED LABEL_DECLs unless they have DECL_IGNORED_P set. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-ssa-live.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44901] New: [4.6 Regression] -fcompare-debug failure for C++ i386.c
We currently have a bootstrap-lean failure on tree-predcom.c . The preprocessed file shows a compare-debug failure for gcc (GCC) 4.6.0 20100708 (experimental), but not for gcc (GCC) 4.6.0 20100705 (experimental), gcc (GCC) 4.6.0 20100630 (experimental) or gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10). -- Summary: [4.6 Regression] -fcompare-debug failure for C++ i386.c Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: debug AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44901
[Bug debug/44901] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-07-10 10:53 --- Created an attachment (id=21174) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21174action=view) test case - compressed with xz $ ./bld-20100708/gcc/xgcc -B./bld-20100708/gcc -c -fpreprocessed -g -O2 -fomit-frame-pointer -fcompare-debug -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common treepred.c xgcc: error: treepred.c: -fcompare-debug failure -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44901
[Bug objc/44488] objc test inconsistencies w/ / w/out --enable-build-with-cxx
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-07-11 01:01 --- (In reply to comment #7) Created an attachment (id=21173) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21173action=view) [edit] ... let me know if it solve that aspect of the problem for you. Yes, it does. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44488
[Bug testsuite/42843] --enable-build-with-cxx plugin tests fail
--- Comment #7 from amylaar at gcc dot gnu dot org 2010-07-11 01:58 --- (In reply to comment #6) This still looks broken. Under a normal bootstrap, on x86_64-apple-darwin10, these new testcases are silently executed against the system compiler rather than the newly built compiler... I see. We really should be using the same BUILD-HOST compiler that was used to build the last stage of the build. In the case of a native bootstrap (assuming stage2/3 comparison succeeded), that should be interchangeable with the newly built compiler. Feel free to re-open the PR; I have no plans to work on it, though. /Users/howarth/gcc/gcc/testsuite/g++.dg/plugin/attribute_plugin.c: In function 'void register_attributes(void*, void*)':^M /Users/howarth/gcc/gcc/testsuite/g++.dg/plugin/attribute_plugin.c:35: error: 'warning' was not declared in this scope^M /Users/howarth/gcc/gcc/testsuite/g++.dg/plugin/attribute_plugin.c: In function 'void handle_pre_generic(void*, void*)':^M /Users/howarth/gcc/gcc/testsuite/g++.dg/plugin/attribute_plugin.c:55: error: 'warning' was not declared in this scope^M Looking at the source makes me wonder why it succeeds elsewhere. It should be including diagnostic.h or disgnostic-core.h to get a declaration for warning. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42843
[Bug testsuite/42843] --enable-build-with-cxx plugin tests fail
--- Comment #9 from amylaar at gcc dot gnu dot org 2010-07-11 04:22 --- (In reply to comment #8) Perhaps we just need something like... No, COMPILER uses CC, too. The issue is the the toplevel Makefile check-gcc rule forces CC in the gcc/Makefile via EXTRA_HOST_FLAGS In the native boostrap case, you probably want CC_FOR_TARGET / CFLAGS_FOR_TARGET / CXX_FOR_TARGET / CXXFLAGS_FOR_TARGET, but you still need COMPILER COMPILER_FLAGS (or its equivalent) in the case of non-bootstrap builds (native or otherwise). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42843
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #49 from amylaar at gcc dot gnu dot org 2010-07-09 10:02 --- I'm working on a fix for 44874, it it seems we are missing references of LABEL_DECLs by gotos. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #50 from amylaar at gcc dot gnu dot org 2010-07-09 11:38 --- Created an attachment (id=21157) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21157action=view) combined ptch for 44832/44874 - WIP For the unreduced testcase, I see differences regarding the labels do_subreg, done, and widen. Any idea why the LABEL_DECLs are kept only when emitting debug information? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #52 from amylaar at gcc dot gnu dot org 2010-07-09 15:06 --- (In reply to comment #49) I'm working on a fix for 44874, it it seems we are missing references of LABEL_DECLs by gotos. Actually, they are marked used when the GIMPLE_LABEL itself is processed. The problem I was seeing was due to scope blocks vanishing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug other/44874] TDF_NOUID dumps miss information about DECL_UID ordering
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-07-10 04:24 --- A patch has been posted here: http://gcc.gnu.org/ml/gcc-patches/2010-07/msg00839.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44874
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #53 from amylaar at gcc dot gnu dot org 2010-07-10 04:44 --- A patch has been posted here: http://gcc.gnu.org/ml/gcc-patches/2010-07/msg00840.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug bootstrap/44512] --enable-build-with-cxx bootstrap fails in revision 160669
--- Comment #10 from amylaar at gcc dot gnu dot org 2010-07-10 05:07 --- Fix checked in trunk revision 161853. The current problem is tracked as PR44832. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44512
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #36 from amylaar at gcc dot gnu dot org 2010-07-08 11:04 --- (In reply to comment #35) The ordering issue in VRP needs to be fixed. The sorting can use LABEL_DECL_UID which is dense in a given function. (but watch out for a -1 value where no UID has been assigned) I think that is too late; it would solve this particular failure, but AAUI, once we allow the relative order of decl_uids to become random, we've lost. There is also the wider issue that this entire business of allowing decl_uids to drift as long as ordering is preserved makes impossible to use dump comparisons as an effective means to determine in what pass things go wrong. It appears that in general, we use negative decl_uids for debug symbols, yet we may retain / copy non-debug symbols for reasons of debugging and let them have positive numbers. I wonder if it would be feasible to allocate new negative the uids for such symbols when they only remain for purposes of debugging, and when we somehow end up merging a debug and non-debug copy, the non-debug with its positive decl_uid should prevail. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #41 from amylaar at gcc dot gnu dot org 2010-07-08 12:01 --- (In reply to comment #39) So you say during inlining we end up generating DECL copies in a different _order_ comparing debug vs. non-debug cases? That would be a bug as well. Indeed we do; once that is fixed, the vrp ordering should be fixed as well. (In reply to comment #37) This is what we have the -nouid modifier for. But this doesn't allow us to use diff to tell if the relative order is OK in one dump while messed up in the other. It hides all the ordering problems, so this option is no good at all to track down the pass where things go wrong. I wonder if it would be feasible to allocate new negative the uids for such Should have read: I wonder if it would be feasible to allocate new negative uids for such symbols when they only remain for purposes of debugging, and when we somehow end up merging a debug and non-debug copy, the non-debug with its positive decl_uid should prevail. ? You have lost me here again. That's a tentative idea how not only the ordering problem could be solved, but also the debug/no-debug variance of decl_uids on declarations / labels that are present in the no-debug output, to allow for meaningful diffs. I haven't tried to implement this yet, though. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #42 from amylaar at gcc dot gnu dot org 2010-07-08 12:08 --- (In reply to comment #40) Indeed we do. -g vs. -g0 diff of non-debug decl copying: How did you get this dump? Enumerating DECLs like this in (-nouid) dump files seems to be an alternative way to solve the dump diff problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug other/44874] New: TDF_NOUID dumps miss information about DECL_UID ordering
When comparing dumps from compilations with debugging information generation enabled and disabled, like for -fcompare-debug, commonly dump files generated with TDF_NOUID are used. However, as has become painfully clear while debugging PR44832, such dumps do not help to spot the point where the DECL_UID ordering of declarations / labels varies. There should be a flag to request an enumeration of all declarations / labels of each function to be dumped in the order of their DECL_UID as part of the debugging dump for the function. Also, a dump of FREE_SSANAMES can be useful at times. -- Summary: TDF_NOUID dumps miss information about DECL_UID ordering Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44874
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #44 from amylaar at gcc dot gnu dot org 2010-07-08 15:54 --- (In reply to comment #43) Now, I see that in the non-debug case we are copying the LABEL_DECL while copying statements while in the debug case we are copying it while copying the block tree. We have to preserve used labels in the block tree it's just not trivial to do unless we resort to setting TREE_USED. Which would be the following, which also fixes the failure. I have done a --enable-build-with-cxx bootstrap of trunk trevision 161952 with this patch applied (with tabs for leading whitespace in the comment). The bootstrap finished successfully, and the regression test results look reasonable, although I still have to generate baseline results to compare this to. I have submitted PR other/44874 to track the shortcomings of our debugging dumps for finding DECL_UID ordering issues. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #46 from amylaar at gcc dot gnu dot org 2010-07-08 17:21 --- (In reply to comment #45) Using TREE_USED isn't really applicable here (we do never re-set it at least). So an option would be to unconditionally preserve all !DECL_INGNORED_P labels in BLOCKs. Which is what my provisional patch was doing, although it'd need better commenting and deletion of dead tests / code. Or play fancy with a bitmap or a pointer-map. Could we use a different bit that is currently unused for LABEL_DECLs? (With a suitable accessor macro, of course.) The name of base.public_flag sounds about right, but might be a bit dangerous considering the unguarded TREE_PUBLIC accessor and possible mix-ups when code is meant to test TREE_PUBLIC of declarations. OTOH it seems that we could safely snarf base.nothrow_flag for LABEL_DECLs. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #47 from amylaar at gcc dot gnu dot org 2010-07-08 20:00 --- Created an attachment (id=21150) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21150action=view) proposed patch (In reply to comment #46) Could we use a different bit that is currently unused for LABEL_DECLs? (With a suitable accessor macro, of course.) Hmm, actually, there should be no problem with changing TREE_USED of a LABEL_DECL once lang_hooks.parse_file is done with emitting warnings about undefined-but-used / used-but-not-defined labels. The problem is clearing them all at or before the start of remove_unused_locals. It's be easy to do in one frontend, when we do the warnings, but requiring all the frontends to do it is messy, and it when remove_unused_locals is called multiple times that'd not reset the used flag for labels the used of which have been optimized away in the meantime. I think the TREE_USED as given from the frontends is probably a good enough approximation if we also take DECL_IGNORED_P into account. As it happens, TREE_USED is actually cleared by init_vars_expansion, although, as stated before, it should be good enough without that. I'm currently testing the attached patch. Regarding a testcase for our testsuite, I think that would best be done in the context of PR other/44874. Although we should be able to reproducibly get scrabled DECL_UIDs with the old compiler logic, having this translate into different ssa name versioning or even generated code is less reliable when you change bits of the compiler or the compiler host / target. With a dump option to enumerate declarations / labels in DECL_UID order, the regression test can verify that order matches. I think this dump option should be default for -fcompare-debug; in that case, the testcase should be relatively simple. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #48 from amylaar at gcc dot gnu dot org 2010-07-09 03:38 --- (In reply to comment #47) I'm currently testing the attached patch. Successfully bootstrapped ergtested in trunk revision 161952, both with without --enable-build-with-cxx. The only difference in the test results to the baseline was that a timeout for libmudflap.cth/pass40-frag.c went away to change a pair of FAILs to a pair of PASSes; this is one of the test that now and then times out on my machine, depending on load. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #13 from amylaar at gcc dot gnu dot org 2010-07-07 13:15 --- (In reply to comment #12) Hm, different SSA name versions are not good - that might cause code generation differences. Where do they first differ? t.c.025t.einline2 / t.c.gk.025t.einline2 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #14 from amylaar at gcc dot gnu dot org 2010-07-07 13:22 --- (In reply to comment #12) $ diff -u -I '^ # DEBUG.*$' t.c.025t.* t.c.gk.025t.* --- t.c.025t.einline2 2010-07-07 13:59:11.251978485 +0100 +++ t.c.gk.025t.einline22010-07-07 13:59:11.451101846 +0100 @@ -149,14 +161,14 @@ int i; int n; struct rtx_def * ops[32]; + unsigned char D.1889; unsigned char D.1888; - unsigned char D.1887; + int D.1887; int D.1886; - int D.1885; int ix86_isa_flags.6; - struct rtx_def * D.1883; - struct rtvec_def * D.1882; - const unsigned char D.1881; + struct rtx_def * D.1884; + struct rtvec_def * D.1883; + const unsigned char D.1882; int mode.5; struct rtvec_def * * D.1872; int D.1817; @@ -329,22 +365,26 @@ L27: mode.5_58 = (int) mode_12; - D.1881_59 = mode_nunits[mode.5_58]; - n_60 = (int) D.1881_59; + D.1882_59 = mode_nunits[mode.5_58]; + n_60 = (int) D.1882_59; + # DEBUG n = n_60 ix86_expand_vector_init_concat (mode_12, target_10(D), ops[0], n_60); goto bb 32; half: mode.5_61 = (int) mode_12; - D.1881_62 = mode_nunits[mode.5_61]; - n_63 = (int) D.1881_62; + D.1882_62 = mode_nunits[mode.5_61]; + n_63 = (int) D.1882_62; + # DEBUG n = n_63 + # DEBUG i = 0 goto bb 26; bb 25: - D.1882_64 = *D.1872_50; - D.1883_66 = D.1882_64-elem[i_65]; - ops[i_65] = D.1883_66; + D.1883_64 = *D.1872_50; + D.1884_66 = D.1883_64-elem[i_65]; + ops[i_65] = D.1884_66; i_67 = i_65 + 1; + # DEBUG i = i_67 bb 26: # i_65 = PHI 0(24), i_67(25) @@ -359,25 +401,26 @@ L29: ix86_isa_flags.6_68 = ix86_isa_flags; - D.1885_69 = ix86_isa_flags.6_68 524288; - if (D.1885_69 == 0) + D.1886_69 = ix86_isa_flags.6_68 524288; + if (D.1886_69 == 0) goto bb 30 (L31); else goto bb 29 (L30); L30: ix86_isa_flags.6_70 = ix86_isa_flags; - D.1886_71 = ix86_isa_flags.6_70 131072; - if (D.1886_71 == 0) + D.1887_71 = ix86_isa_flags.6_70 131072; + if (D.1887_71 == 0) goto bb 30 (L31); else goto bb 32; L31: mode.5_72 = (int) mode_12; - D.1887_73 = mode_size[mode.5_72]; - D.1888_74 = D.1887_73 / 4; - if (D.1888_74 == 4) + D.1888_73 = mode_size[mode.5_72]; + D.1889_74 = D.1888_73 / 4; + # DEBUG n_words = (int) D.1889_74 + if (D.1889_74 == 4) goto bb 31; else goto bb 32; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #17 from amylaar at gcc dot gnu dot org 2010-07-07 13:48 --- (In reply to comment #16) Maybe I'm blind, but the SSA name versions are all the same in the above diff. The ssa name 1881 gets changed to 1882, isn't that significant? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #20 from amylaar at gcc dot gnu dot org 2010-07-07 14:00 --- Created an attachment (id=21123) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21123action=view) typescript looking at inrements of next_decl_uid The last ssa name before 1881 in the dump files is 1872; so the increment to 1873 should be legitimate. Any idea which of the logged increments I should take a closer look at? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #21 from amylaar at gcc dot gnu dot org 2010-07-07 14:02 --- (In reply to comment #19) Yes, that's ok. I'm re-reducing the testcase (which also fails with -fno-ivopts). FWIW I've reduced the testcase with the aim of reproducing the problem in r160832, which is when the un-reduced testcase first fails. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #22 from amylaar at gcc dot gnu dot org 2010-07-07 14:06 --- (In reply to comment #18) That's not SSA name, but DECL_UID of the underlying decl. I believe such changes are considered ok if it just means different gaps between uids with -g vs. -g0. For compiler-generated temporary variables, isn't the DECL_UID part of the name? And doesn't that affect hash tables, and thus ordering? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #25 from amylaar at gcc dot gnu dot org 2010-07-07 14:47 --- Created an attachment (id=21125) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21125action=view) diff -u -I '^ # DEBUG.*$' t.c.093t.pre t.c.gk.093t.pre Disregarding where merely the base names of ssa name versions vary according to the DECL_UID, the first ssa name version change is in 093t.pre -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #27 from amylaar at gcc dot gnu dot org 2010-07-07 14:56 --- (In reply to comment #26) The first difference appears in .093t.pre (comparing -nouid dumps): cat ii386.3.3.i.gk.094t.pre | grep -v '# DEBUG' | diff -u ii386.3.3.i.094t.pre - | less is that .093t.pre or .094t.pre ? And what revision of trunk are you looking at? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #29 from amylaar at gcc dot gnu dot org 2010-07-07 15:06 --- (In reply to comment #26) thus I think we have to look for an instability in the SCC walker. There's a qsort call. Is compare_ops guaranteed never to return 0 for items that are not identical? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #30 from amylaar at gcc dot gnu dot org 2010-07-07 17:27 --- (In reply to comment #28) No, the culprit is loop header copying which causes I also see changes in the MEM_* after loop header copying. It happens during the second call of copy_loop_header. Alas, it seems that copy_loop_header is innocent, because it gets different freed ssa name versions for debug / no debug compilation: Debug: Breakpoint 5, copy_loop_headers () at ../../gcc/gcc/tree-ssa-loop-ch.c:140 140 loop_optimizer_init (LOOPS_HAVE_PREHEADERS (gdb) call debug_tree(cfun-gimple_df-free_ssanames) ssa_name 0xb7db20f0 nothrow var var_decl 0xb7d97060 retval.3def_stmt version 87 in-free-list (gdb) call debug_tree(cfun-gimple_df-free_ssanames-common.chain) ssa_name 0xb7dacfc0 nothrow var var_decl 0xb7d91d80 retval.1def_stmt version 83 in-free-list No debug: Breakpoint 5, copy_loop_headers () at ../../gcc/gcc/tree-ssa-loop-ch.c:140 140 loop_optimizer_init (LOOPS_HAVE_PREHEADERS (gdb) call debug_tree(cfun-gimple_df-free_ssanames) ssa_name 0xb7da5f90 nothrow var var_decl 0xb7d95060 retval.3def_stmt version 87 in-free-list (gdb) call debug_tree(cfun-gimple_df-free_ssanames-common.chain) ssa_name 0xb7da5db0 nothrow var var_decl 0xb7d90d80 retval.1def_stmt version 82 in-free-list -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #31 from amylaar at gcc dot gnu dot org 2010-07-07 17:50 --- (In reply to comment #30) The first difference I seen in debug / no debug values of cfun-gimple_df-free_ssanames-ssa_name.version for the relevant function is in vrp. Debug: Hardware watchpoint 10: cfun-gimple_df-free_ssanames Old value = (tree) 0xb7db2330 New value = (tree) 0xb7dacf60 release_ssa_name (var=0xb7dacf60) at ../../gcc/gcc/tree-ssanames.c:241 241 } 2: cfun-gimple_df-free_ssanames-ssa_name.version = 82 (gdb) bt #0 release_ssa_name (var=0xb7dacf60) at ../../gcc/gcc/tree-ssanames.c:241 #1 0x086a280e in release_defs (stmt=0xb7dacf90) at ../../gcc/gcc/tree-ssanames.c:293 #2 0x086d85e6 in remove_range_assertions () at ../../gcc/gcc/tree-vrp.c:5326 #3 execute_vrp () at ../../gcc/gcc/tree-vrp.c:7442 #4 0x084d5797 in execute_one_pass (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1576 #5 0x084d5a9d in execute_pass_list (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1631 #6 0x084d5ab0 in execute_pass_list (pass=0x8c41d80) at ../../gcc/gcc/passes.c:1632 #7 0x085d562a in tree_rest_of_compilation (fndecl=0xb7d88980) at ../../gcc/gcc/tree-optimize.c:420 #8 0x0876e5bc in cgraph_expand_function (node=0xb7cf686c) at ../../gcc/gcc/cgraphunit.c:1632 #9 0x0876ffd9 in cgraph_expand_all_functions () at ../../gcc/gcc/cgraphunit.c:1711 #10 cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1967 #11 0x08770995 in cgraph_finalize_compilation_unit () at ../../gcc/gcc/cgraphunit.c:1171 #12 0x0818863a in cp_write_global_declarations () at ../../gcc/gcc/cp/decl2.c:3925 #13 0x0857c650 in compile_file (argc=21, argv=0xb494) ---Type return to continue, or q return to quit---q at ../../gcc/gcc/topleQuit (gdb) frame 4 #4 0x084d5797 in execute_one_pass (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1576 1576 todo_after = pass-execute (); (gdb) p pass-name $5 = 0x8aa58e2 vrp No debug: Hardware watchpoint 12: cfun-gimple_df-free_ssanames Old value = (tree) 0xb7dad1b0 New value = (tree) 0xb7da5d50 release_ssa_name (var=0xb7da5d50) at ../../gcc/gcc/tree-ssanames.c:241 241 } 3: cfun-gimple_df-free_ssanames-ssa_name.version = 81 1: cfun-decl = (tree) 0xb7d88900 (gdb) bt #0 release_ssa_name (var=0xb7da5d50) at ../../gcc/gcc/tree-ssanames.c:241 #1 0x086a280e in release_defs (stmt=0xb7da5d80) at ../../gcc/gcc/tree-ssanames.c:293 #2 0x086d85e6 in remove_range_assertions () at ../../gcc/gcc/tree-vrp.c:5326 #3 execute_vrp () at ../../gcc/gcc/tree-vrp.c:7442 #4 0x084d5797 in execute_one_pass (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1576 #5 0x084d5a9d in execute_pass_list (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1631 #6 0x084d5ab0 in execute_pass_list (pass=0x8c41d80) at ../../gcc/gcc/passes.c:1632 #7 0x085d562a in tree_rest_of_compilation (fndecl=0xb7d88900) at ../../gcc/gcc/tree-optimize.c:420 #8 0x0876e5bc in cgraph_expand_function (node=0xb7cf6498) at ../../gcc/gcc/cgraphunit.c:1632 #9 0x0876ffd9 in cgraph_expand_all_functions () at ../../gcc/gcc/cgraphunit.c:1711 #10 cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1967 #11 0x08770995 in cgraph_finalize_compilation_unit () at ../../gcc/gcc/cgraphunit.c:1171 #12 0x0818863a in cp_write_global_declarations () at ../../gcc/gcc/cp/decl2.c:3925 #13 0x0857c650 in compile_file (argc=19, argv=0xb4b4) ---Type return to continue, or q return to quit---q at ../../gcc/gcc/topleQuit (gdb) frame 4 #4 0x084d5797 in execute_one_pass (pass=0x8c42f00) at ../../gcc/gcc/passes.c:1576 1576 todo_after = pass-execute (); (gdb) p pass-name $7 = 0x8aa58e2 vrp -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #32 from amylaar at gcc dot gnu dot org 2010-07-07 19:53 --- tree-vrp.c:find_switch_asserts uses compare_case_labels to sort case labels, with the main key being the uid of the case label. We have different case labels when debugging, and their uid sorts differently in relation to user labels that happen to become case labels. With debug enabled, the label 'half' is sorted at the start of the array: (gdb) call debug_tree($49[0]) case_label_expr 0xb7dab0b4 type void_type 0xb7d00840 void asm_written VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 side-effects tree_1 arg 0 integer_cst 0xb7d18300 type integer_type 0xb7d002a0 int constant 5 arg 2 label_decl 0xb7d99bd0 half type void_type 0xb7d00840 void VOID file t.c line 75 col 1 align 1 context function_decl 0xb7d88980 ix86_expand_vector_init initial error_mark 0xb7cf07e0 abstract_origin label_decl 0xb7cf9f18 half t.c:73:5 (gdb) call debug_tree((tree)0xb7d99bd0) label_decl 0xb7d99bd0 half type void_type 0xb7d00840 void asm_written VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 VOID file t.c line 75 col 1 align 1 context function_decl 0xb7d88980 ix86_expand_vector_init initial error_mark 0xb7cf07e0 abstract_origin label_decl 0xb7cf9f18 half (gdb) p ((tree)0xb7d99bd0)-decl_minimal.uid $50 = 1877 (gdb) call debug_tree($49[1]) case_label_expr 0xb7dab024 type void_type 0xb7d00840 void asm_written VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 side-effects tree_1 arg 2 label_decl 0xb7d99c24 L. type void_type 0xb7d00840 void used ignored VOID file t.c line 95 col 5 align 1 context function_decl 0xb7d88980 ix86_expand_vector_init abstract_origin label_decl 0xb7d93000 L. t.c:95:5 (gdb) p ((tree)0xb7d99c24)-decl_minimal.uid $51 = 1890 With debug disabled, 'half' sorts at the end of the array: (gdb) call debug_tree($44[3]) case_label_expr 0xb7da4090 type void_type 0xb7d00840 void VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 side-effects tree_1 arg 0 integer_cst 0xb7d182a0 type integer_type 0xb7d002a0 int constant 3 arg 1 integer_cst 0xb7d182d0 type integer_type 0xb7d002a0 int constant 4 arg 2 label_decl 0xb7d98c24 L.27 type void_type 0xb7d00840 void used ignored VOID file t.c line 67 col 5 align 1 context function_decl 0xb7d88900 ix86_expand_vector_init abstract_origin label_decl 0xb7cf9e1c L.0 t.c:67:5 (gdb) call debug_tree($44[4]) case_label_expr 0xb7da40b4 type void_type 0xb7d00840 void VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 side-effects tree_1 arg 0 integer_cst 0xb7d18300 type integer_type 0xb7d002a0 int constant 5 arg 2 label_decl 0xb7d98c78 half type void_type 0xb7d00840 void used VOID file t.c line 75 col 1 align 1 context function_decl 0xb7d88900 ix86_expand_vector_init initial error_mark 0xb7cf07e0 abstract_origin label_decl 0xb7cf9f18 half t.c:73:5 (gdb) p ((tree)0xb7d98c24)-decl_minimal.uid $46 = 1892 (gdb) p ((tree)0xb7d98c78)-decl_minimal.uid $47 = 1893 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #33 from amylaar at gcc dot gnu dot org 2010-07-08 01:00 --- pop_labels_1 installs the LABEL_DECL of half in BLOCK_VARS: Breakpoint 16, pop_labels_1 (slot=0xb7d86f94, data=0xb7d95068) at ../../gcc/gcc/cp/decl.c:384 384 struct named_label_entry *ent = (struct named_label_entry *) *slot; (gdb) n 387 pop_label (ent-label_decl, NULL_TREE); (gdb) 391 TREE_CHAIN (ent-label_decl) = BLOCK_VARS (block); If we are NOT generating debug info, this is cleared in remove_unused_scope_block_p: Hardware watchpoint 15: *$11 (gdb) cont Continuing. Hardware watchpoint 15: *$11 Old value = (tree) 0xb7cf9f18 New value = (tree) 0x0 remove_unused_scope_block_p (scope=0xb7d86fa4) at ../../gcc/gcc/tree-ssa-live.c:427 427 for (t = BLOCK_VARS (scope); *t; t = next) Note this code in lines 478ff: else if (debug_info_level == DINFO_LEVEL_NORMAL || debug_info_level == DINFO_LEVEL_VERBOSE) ; else { *t = TREE_CHAIN (*t); next = t; } But if we are generating debug info, this BLOCK_VARS setting remains untouched, and copied in remap_block: Breakpoint 14, remap_block (block=0xbfffee6c, id=0xbfffef0c) at ../../gcc/gcc/tree-inline.c:616 616 BLOCK_VARS (new_block) = remap_decls (BLOCK_VARS (old_block), (gdb) call debug_tree(old_block-block_vars) There is no member named block_vars. (gdb) call debug_tree(old_block-block.vars) label_decl 0xb7cf9f18 half type void_type 0xb7d00840 void asm_written VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 VOID file t.c line 75 col 1 align 1 context function_decl 0xb7d88900 ix86_expand_vector_init_general initial error_mark 0xb7cf07e0 (gdb) p old_block-block.vars-common.chain $21 = (tree) 0x0 to be copied later from expand_call_inline ... We got this with debug info: Breakpoint 12, expand_call_inline (fn=0xb7d88980) at ../../gcc/gcc/tree-inline.c:3872 3872 if (DECL_INITIAL (fn)) (gdb) s 3873prepend_lexical_block (id-block, remap_blocks (DECL_INITIAL (fn), id)); (gdb) remap_blocks (block=0xb7d95750, id=0xb028) at ../../gcc/gcc/tree-inline.c:634 634 if (!block) (gdb) call debug_tree(block) block 0xb7d95750 used vars label_decl 0xb7d99738 half type void_type 0xb7d00840 void asm_written VOID align 8 symtab 0 alias set -1 canonical type 0xb7d00840 pointer_to_this pointer_type 0xb7d008a0 VOID file t.c line 75 col 1 align 1 context function_decl 0xb7d88c00 _ZL31ix86_expand_vector_init_generalb12machine_modeP7rtx_defS1_.isra.0 initial error_mark 0xb7cf07e0 abstract_origin label_decl 0xb7cf9f18 half subblocks block 0xb7d95784 used vars var_decl 0xb7d97780 ops type array_type 0xb7d8cf00 addressable used tree_1 decl_5 BLK file t.c line 61 col 13 size integer_cst 0xb7d7f5a0 constant 1024 unit size integer_cst 0xb7d901c8 constant 128 align 32 context function_decl 0xb7d88c00 _ZL31ix86_expand_vector_init_generalb12machine_modeP7rtx_defS1_.isra.0 abstract_origin var_decl 0xb7d91060 ops chain var_decl 0xb7d977e0 n supercontext block 0xb7d95750 subblocks block 0xb7d957b8 used supercontext block 0xb7d95784 abstract_origin block 0xb7d95000 used vars var_decl 0xb7d914e0 n_words supercontext block 0xb7d95034 used vars var_decl 0xb7d91060 ops supercontext block 0xb7d95068 used vars label_decl 0xb7cf9f18 half supercontext function_decl 0xb7d88900 ix86_expand_vector_init_general subblocks block 0xb7d95034 subblocks block 0xb7d95000 abstract_origin block 0xb7d95034 abstract_origin block 0xb7d95068 and that gets the LABEL_DECL an expedited copy with a relatively low uid: Hardware watchpoint 10: *$11 Old value = 1853 New value = 1877 0x086ee9cc in copy_node_stat (node=0xb7d99738) at ../../gcc/gcc/tree.c:966 966 DECL_UID (t) = next_decl_uid++; (gdb) bt #0 0x086ee9cc in copy_node_stat (node=0xb7d99738) at ../../gcc/gcc/tree.c:966 #1 0x087a315d in copy_decl_no_change (decl=0xb7d99738, id=0xb028) at ../../gcc/gcc/tree-inline.c:4782 #2 0x087a427c in remap_decl (decl=0xb7d99738, id=0xb028) at ../../gcc/gcc/tree-inline.c:288 #3 0x087a5534 in remap_decls (decls=value optimized out, nonlocalized_list=0xb7d95940, id=0xb028) at ../../gcc/gcc/tree-inline.c:557 #4 0x087a58db in remap_block (block=0xbfffef8c, id=0xb028) at ../../gcc/gcc/tree-inline.c:616 #5 0x087a5a5e in remap_blocks (block=0xb7d95750, id=0xb028) at ../../gcc/gcc/tree-inline.c:637 #6 0x087affe0 in expand_call_inline (fn=0xb7d88980) at ../../gcc/gcc/tree-inline.c:3873 #7 gimple_expand_calls_inline (fn=0xb7d88980) at ../../gcc/gcc/tree-inline.c:4057 #8 optimize_inline_calls (fn=0xb7d88980) at ../../gcc/gcc/tree-inline.c:4207 #9 0x0877e62d in cgraph_early_inlining () at ../../gcc/gcc/ipa
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #34 from amylaar at gcc dot gnu dot org 2010-07-08 01:10 --- FWIW, this simple patch stops the comparison failures both for my reduced testcase as for the original testcase. I'm not sure if we want to pay the price of carryinig more labels around for -g0, or if we'd rather fix the ordering issues somehow. Index: tree-ssa-live.c === --- tree-ssa-live.c (revision 160832) +++ tree-ssa-live.c (working copy) @@ -476,7 +476,8 @@ remove_unused_scope_block_p (tree scope) type is used or not. */ else if (debug_info_level == DINFO_LEVEL_NORMAL - || debug_info_level == DINFO_LEVEL_VERBOSE) + || debug_info_level == DINFO_LEVEL_VERBOSE + || 1) ; else { -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug bootstrap/44832] --enable-build-with-cxx Bootstrap comparison failure
--- Comment #3 from amylaar at gcc dot gnu dot org 2010-07-06 13:18 --- Created an attachment (id=21106) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21106action=view) i386.c preprocessed source /user/inria/fsf/161802/bld-1/./prev-gcc/cc1plus -fpreprocessed i386.ii -quiet -dumpbase i386.c -mtune=generic -march=pentiumpro -auxbase-strip i386.o -g -O2 -W -Wall -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -version -fomit-frame-pointer -fno-common -o i386.s /user/inria/fsf/161802/bld-1/./prev-gcc/cc1plus -fpreprocessed i386.ii -quiet -dumpbase i386.c -mtune=generic -march=pentiumpro -auxbase-strip i386.o -g -gtoggle -O2 -W -Wall -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -version -fomit-frame-pointer -fno-common -o i386g.s [amyl...@laria gcc]$ diff -pU1 '-F^[_a-zA-Z]' i386.s i386g.s|grep -A 10 -B 10 '^[+-].*[0-9](%esp' - .loc 2 27855 0 movzbl mode_nunits(%ebx), %esi - .loc 2 27854 0 movzbl mode_inner(%ebx), %edx - .loc 2 27858 0 movl$0, (%esp) - .loc 2 27856 0 shrb$2, %al movzbl %al, %eax - .loc 2 27854 0 - movl%edx, 64(%esp) -.LVL8487: - .loc 2 27857 0 + movl%edx, 60(%esp) movl%esi, %edx -.LVL8488: - .loc 2 27856 0 movl%eax, 48(%esp) -.LVL8489: - .loc 2 27857 0 sarl$31, %edx movl%esi, %eax -.LVL8490: idivl 48(%esp) - .loc 2 27858 0 - movl64(%esp), %edx - .loc 2 27857 0 + movl60(%esp), %edx movl%eax, %esi -.LVL8491: - .loc 2 27858 0 movzbl mode_size(%edx), %eax -.LVL8492: sall$3, %eax @@ -103335,12 +62102,5 @@ _ZL31ix86_expand_vector_init_generalb12m movl%eax, 72(%esp) -.LVL8493: -.LBB13227: -- -.LBB13224: -.LBB13226: -.LBB13238: -.LBB13237: -.LBB13231: - .loc 2 27770 0 leal-1(%ecx), %edx - .loc 2 27867 0 xorl%ebx, %ebx - .loc 2 27770 0 - movl%edx, 60(%esp) - .loc 2 27866 0 + movl%edx, 64(%esp) movl256(%esp), %edx -.LBE13231: - .loc 2 27864 0 addl$1, %ebx -.LBB13232: - .loc 2 27867 0 movl$1, 12(%esp) - .loc 2 27866 0 movl%edi, 52(%esp) movl(%edx), %eax - .loc 2 27867 0 - movl60(%esp), %edx + movl64(%esp), %edx movl4(%eax,%edx,4), %eax @@ -103584,3 +62233,3 @@ _ZL31ix86_expand_vector_init_generalb12m movl%eax, 8(%esp) - movl64(%esp), %eax + movl60(%esp), %eax movl%eax, 4(%esp) @@ -103589,32 +62238,13 @@ _ZL31ix86_expand_vector_init_generalb12m call_Z13convert_modes12machine_modeS_P7rtx_defi -.LBE13232: - .loc 2 27864 0 cmpl%ebx, %esi movl40(%esp), %ecx -.LBB13233: - .loc 2 27867 0 movl%eax, %ebp -- .L8384: -.LBB13234: - .loc 2 27866 0 movl256(%esp), %edx - .loc 2 27867 0 movl$1, 12(%esp) - .loc 2 27866 0 movl(%edx), %eax -.LVL8522: - .loc 2 27770 0 - movl60(%esp), %edx + movl64(%esp), %edx subl%ebx, %edx -.LBE13234: - .loc 2 27864 0 addl$1, %ebx -.LVL8523: -.LBB13235: - .loc 2 27867 0 movl4(%eax,%edx,4), %eax @@ -103622,3 +62252,3 @@ _ZL31ix86_expand_vector_init_generalb12m movl%eax, 8(%esp) - movl64(%esp), %eax + movl60(%esp), %eax movl%eax, 4(%esp) @@ -103627,3 +62257,2 @@ _ZL31ix86_expand_vector_init_generalb12m call_Z13convert_modes12machine_modeS_P7rtx_defi - .loc 2 27874 0 movl%ebp, 16(%esp) @@ -103633,8 +62262,4 @@ _ZL31ix86_expand_vector_init_generalb12m movl$65, 4(%esp) - .loc 2 27867 0 movl%eax, %edx -.LVL8524: -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #5 from amylaar at gcc dot gnu dot org 2010-07-06 14:42 --- (In reply to comment #4) Reverting up to r161801 still gets me ./g++ -B. -c -O2 -march=pentiumpro -mtune=generic -m32 ii386.i -fcompare-debug g++: error: ii386.i: -fcompare-debug failure (length) so it wasn't r161802. Is this command supposed to also give sane results on i686-pc-linux-gnu? Even when I try this with r161600, it says there is a length failure. But when I make cc1plus create actual assembly files and assemble / strip them, the resulting object files compare equal. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #6 from amylaar at gcc dot gnu dot org 2010-07-06 14:51 --- (In reply to comment #4) Reverting up to r161801 still gets me ./g++ -B. -c -O2 -march=pentiumpro -mtune=generic -m32 ii386.i -fcompare-debug I've tried this with --save-temps in r161600 and there's lots of differences in the dump files regarding numbers that won't appear in the output file. So this is a much stricter comparison check than what we do during bootstrap. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #7 from amylaar at gcc dot gnu dot org 2010-07-06 15:03 --- (In reply to comment #4) ./g++ -B. -c -O2 -march=pentiumpro -mtune=generic -m32 ii386.i -fcompare-debug Works with g++ (GCC) 4.6.0 20100613 (experimental), fails with g++ (GCC) 4.6.0 20100617 (experimental). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-07-06 18:21 --- (In reply to comment #4) Reverting up to r161801 still gets me ./g++ -B. -c -O2 -march=pentiumpro -mtune=generic -m32 ii386.i -fcompare-debug g++: error: ii386.i: -fcompare-debug failure (length) Works in r160828, fails in r160832. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #9 from amylaar at gcc dot gnu dot org 2010-07-07 01:42 --- Created an attachment (id=21117) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21117action=view) reduced testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #10 from amylaar at gcc dot gnu dot org 2010-07-07 02:00 --- ;; Function void ix86_expand_vector_init_general(bool, machine_mode, rtx, rtx) Compiling the reduced testcase in a subdirectory of the r160832 gcc build directory with: ../g++ -B.. -da -march=pentiumpro -mtune=generic -m32 t.c --dump-tree-all -g -S -fdump-unnumbered , I see this in the final dump: (_ZL31ix86_expand_vector_init_generalb12machine_modeP7rtx_defS1_) deleting insn with uid = 174. Failed to expand as dwarf: op1 Reason: DECL has no RTL ;; Function void ix86_expand_vector_init(bool, rtx, rtx) (_Z23ix86_expand_vector_initbP7rtx_defS0_) deleting insn with uid = 170. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added CC||jamborm at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug debug/44832] [4.6 Regression] -fcompare-debug failure for C++ i386.c
--- Comment #11 from amylaar at gcc dot gnu dot org 2010-07-07 02:16 --- (In reply to comment #10) ;; Function void ix86_expand_vector_init_general(bool, machine_mode, rtx, rtx) Compiling the reduced testcase in a subdirectory of the r160832 gcc build directory with: ../g++ -B.. -da -march=pentiumpro -mtune=generic -m32 t.c --dump-tree-all -g -S -fdump-unnumbered , I see this in the final dump: Hmm, that's actually the same as for r160828; but still, r160828 passes the -fcompare-debug debug test with the reduced test case, while r160832 fails it. Running this test with --save-temps and diffing the output shows that somehow we end up with different tmp_var_id_num values for variables created by tree-ssa-pre.c: --- t.gkd 2010-07-07 03:02:40.831101079 +0100 +++ t.gk.gkd2010-07-07 03:02:40.886978157 +0100 @@ -454,9 +454,9 @@ (insn:TI# 0 0 t.c:78 (set (reg/f:SI 2 cx [116]) (mem/s/f:SI (plus:SI (mult:SI (reg/v:SI 0 ax [orig:80 i ] [80]) (const_int 4 [0x4])) -(reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_81 S4 A32]))# {*movsi_1} (expr_list:REG_EQUIV (mem/s/f:SI (plus:SI (mult:SI (reg/v:SI 0 ax [orig:80 i ] [80]) +(reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_82 S4 A32]))# {*movsi_1} (expr_list:REG_EQUIV (mem/s/f:SI (plus:SI (mult:SI (reg/v:SI 0 ax [orig:80 i ] [80]) (const_int 4 [0x4])) -(reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_81 S4 A32]) +(reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_82 S4 A32]) (nil))) (insn:TI# 0 0 t.c:78 (set (mem/s/f:SI (plus:SI (plus:SI (mult:SI (reg/v:SI 0 ax [orig:80 i ] [80]) (const_int 4 [0x4])) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug target/44749] mep-elf fails to build
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-07-05 19:54:13 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44749
[Bug target/44750] pdp-11 fails to build
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-07-05 19:57:14 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44750
[Bug target/44759] mn10300.md signed/unsigned comparisons
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-07-05 20:00:37 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44759
[Bug target/44757] lm32.md: In function �gen_ashlsi3�:unused variable �one�
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-07-05 20:01:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44757
[Bug rtl-optimization/44752] insn-automata.c: empty translation unit
--- Comment #6 from amylaar at gcc dot gnu dot org 2010-07-05 20:14 --- (In reply to comment #5) Created an attachment (id=21088) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21088action=view) [edit] patch which needs testing I have not tested this fix but it should work and should remove the warning/error for these targets. No, the translation unit is still considered empty. You have to put something syntactic into it, although it could be an extern declaration, an static inline function, or a struct declaration, e.g.: struct rtx_def; -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2010-07-05 01:33:44 |2010-07-05 20:14:57 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug bootstrap/44512] --enable-build-with-cxx bootstrap fails in revision 160669
--- Comment #9 from amylaar at gcc dot gnu dot org 2010-07-05 20:18 --- Subject: Bug 44512 Author: amylaar Date: Mon Jul 5 20:18:07 2010 New Revision: 161853 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=161853 Log: PR bootstrap/44512 * genenums.c (main): Output include of insn-constants.h * Makefile.in (insn-enums.o): Depend on insn-constants.h. Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/genenums.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44512
[Bug bootstrap/44829] New: java bootstrap failure in revision 161839 on i686-pc-linux-gnu
/user/inria/fsf/bld-20100705/./prev-gcc/xgcc -B/user/inria/fsf/bld-20100705/./prev-gcc/ -B/user/inria/20100705/i686-pc-linux-gnu/bin/ -B/user/inria/20100705/i686-pc-linux-gnu/bin/ -B/user/inria/20100705/i686-pc-linux-gnu/lib/ -isystem /user/inria/20100705/i686-pc-linux-gnu/include -isystem /user/inria/20100705/i686-pc-linux-gnu/sys-include-c -DIN_GCC_FRONTEND -g -O2 -fomit-frame-pointer -gtoggle -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -Ijava -I../../gcc-new/gcc -I../../gcc-new/gcc/java -I../../gcc-new/gcc/../include -I../../gcc-new/gcc/../libcpp/include -I../../gcc-new/gcc/../libdecnumber -I../../gcc-new/gcc/../libdecnumber/bid -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../gcc-new/gcc/java/class.c -o java/class.o ../../gcc-new/gcc/java/class.c: In function make_class_data: ../../gcc-new/gcc/java/class.c:1923:3: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../gcc-new/gcc/java/class.c:1925:3: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1: all warnings being treated as errors -- Summary: java bootstrap failure in revision 161839 on i686-pc- linux-gnu Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44829
[Bug bootstrap/44825] [4.6 regression] Failed to bootstrap
--- Comment #6 from amylaar at gcc dot gnu dot org 2010-07-05 23:15 --- *** Bug 44829 has been marked as a duplicate of this bug. *** -- amylaar at gcc dot gnu dot org changed: What|Removed |Added CC||amylaar at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44825
[Bug bootstrap/44829] java bootstrap failure in revision 161839 on i686-pc-linux-gnu
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-07-05 23:15 --- *** This bug has been marked as a duplicate of 44825 *** -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44829
[Bug bootstrap/44832] New: --enable-build-with-cxx Bootstrap comparison failure
r161856, bootstrapped with --enable-build-with-cxx, fails the bootstrap comparison on i386.o. By doing a binary search applying the first patch for PR44512 http://gcc.gnu.org/ml/gcc-patches/2010-06/msg01765.html to older revisions, I found that the onset of these comparison failures is between revision 161800 and 161802. As 161801 was a fortran-only patch, 161802 seems the likely culprit. -- Summary: --enable-build-with-cxx Bootstrap comparison failure Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu OtherBugsDependingO 44433 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug bootstrap/44832] --enable-build-with-cxx Bootstrap comparison failure
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-07-06 05:25 --- Adding -gtoggle to the options to compile the stage3 i386.o gives the same assembly as stage2. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832
[Bug bootstrap/44335] [4.6 regression] gcc-4.6-20100529 java bootstrap failure on arm-linux-gnueabi
--- Comment #5 from amylaar at gcc dot gnu dot org 2010-07-02 08:27 --- Here is my patch: http://gcc.gnu.org/ml/gcc-patches/2010-07/msg00085.html bootstrap regtest finished successfully on i686-pc-linuc-gnu in trunk revision 161664. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44335
[Bug target/44732] [4.6 Regression] bootstrap broken on ia64
--- Comment #4 from amylaar at gcc dot gnu dot org 2010-07-01 09:44 --- What is the target triple from config.guess? I've tried cross compilers from i686-pc-linux-gnu to ia64-elf and ia64-linux-gnu (using ccc (GCC) 4.4.4 20100503 (Red Hat 4.4.4-2)), but I get lots of extra errors (and even more warnings). ia64-elf: [amyl...@laria gcc]$ make ia64.o 21 | grep -c error 128 [amyl...@laria gcc]$ ^C [amyl...@laria gcc]$ make ia64.o 21 | wc 4143038 40231 [amyl...@laria gcc]$ make ia64.o 21 | grep -c error: 128 ia64-linux-gnu: [amyl...@laria gcc]$ make ia64.o 21|wc 4143039 40258 [amyl...@laria gcc]$ make ia64.o 21|grep -c error: 128 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44732
[Bug target/44732] [4.6 Regression] bootstrap broken on ia64
--- Comment #7 from amylaar at gcc dot gnu dot org 2010-07-01 10:27 --- Subject: Bug 44732 Author: amylaar Date: Thu Jul 1 10:27:34 2010 New Revision: 161658 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=161658 Log: PR target/44732 * config/ia64/ia64.c (ia64_register_move_cost): Remove stray '{'. Modified: trunk/gcc/ChangeLog trunk/gcc/config/ia64/ia64.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44732
[Bug target/44732] [4.6 Regression] bootstrap broken on ia64
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-07-01 10:35 --- (In reply to comment #6) Created an attachment (id=21054) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21054action=view) [edit] preprocessed source Preprocessed source of ia64.i for your convenience. Thanks, in the meantime, I found out that all these errors are genuine - sort of. The real smoking gun are 'nested function' warnings. By searching for the first one, I found a stray '{'. I've committed the fix as obvious. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44732
[Bug target/44732] [4.6 Regression] bootstrap broken on ia64
--- Comment #10 from amylaar at gcc dot gnu dot org 2010-07-01 10:49 --- As I used cut paste for a few repeated stanzas, I just checked if there was any more of the same. Once you know what it is, it's easy to find in the patch: [amyl...@laria ~]$ grep -A 5 -B 5 '^+[ ]*{' 44566-regclass-diff-3 static int -ia64_register_move_cost (enum machine_mode mode, enum reg_class from, -enum reg_class to) +ia64_register_move_cost (enum machine_mode mode, enum reg_class from_i, +enum reg_class to_i) +{ + enum reg_class from = (enum reg_class) from_i; + enum reg_class to = (enum reg_class) to_i; { /* ADDL_REGS is the same as GR_REGS for movement purposes. */ if (to == ADDL_REGS) so this typo was specific to ia64.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44732
[Bug target/44732] [4.6 Regression] bootstrap broken on ia64
--- Comment #12 from amylaar at gcc dot gnu dot org 2010-07-01 11:18 --- Created an attachment (id=21056) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21056action=view) * ia64_register_move_cost (Fix argument types). Yes, it was my patch. With the attached patch, yesterday's gcc 4.6.0 accepts ia64.c without warning: [amyl...@laria gcc]$ /user/inria/20100630/bin/gcc -c -DUSE_LIBUNWIND_EXCEPTIONS -g -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include -I../../gcc/gcc/../libdecnumber -I../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../gcc/gcc/config/ia64/ia64.c -o ia64.o [amyl...@laria gcc]$ -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44732
[Bug target/44749] New: mep-elf fails to build
mep-elf fails to build: gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings - Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute - pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wo ld-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE - I. -Ibuild -I../../../gcc/gcc -I../../../gcc/gcc/build -I../../../gcc/gcc/../inc lude -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I ../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/ usr/include/libelf \ -o build/genflags.o ../../../gcc/gcc/genflags.c In file included from ../../../gcc/gcc/genflags.c:27: ./tm.h:5:29: error: insn-constants.h: No such file or directory make[1]: *** [build/genflags.o] Error 1 -- Summary: mep-elf fails to build Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: mep-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44749
[Bug target/44750] New: pdp-11 fails to build
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I../../../gcc/gcc -I../../../gcc/gcc/build -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf \ -o build/gencondmd.o build/gencondmd.c In file included from build/gencondmd.c:39:0: ../../../gcc/gcc/reload.h:33:12: error: conflicting types for register_move_cost ../../../gcc/gcc/config/pdp11/pdp11-protos.h:37:12: note: previous declaration of register_move_cost was here make[1]: *** [build/gencondmd.o] Error 1 -- Summary: pdp-11 fails to build Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: pdp-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44750
[Bug target/44751] New: h8300 get_attr_cc warnings
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-attrtab.c -o insn-attrtab.o ../../../gcc/gcc/config/h8300/h8300.md: In function get_attr_cc: ../../../gcc/gcc/config/h8300/h8300.md:1322:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:1333:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:2043:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:2055:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:2067:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:2079:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:2990:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:3046:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] ../../../gcc/gcc/config/h8300/h8300.md:3102:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] cc1: all warnings being treated as errors make[1]: *** [insn-attrtab.o] Error 1 -- Summary: h8300 get_attr_cc warnings Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44751
[Bug target/44752] New: crx-elf insn-automata.c: empty translation unit
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-automata.c -o insn-automata.o insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] cc1: all warnings being treated as errors -- Summary: crx-elf insn-automata.c: empty translation unit Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: crx-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug rtl-optimization/44752] insn-automata.c: empty translation unit
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-07-01 15:59 --- Actually, crx is not the only target with this problem: avr-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] cris-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] crx-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] fr30-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] m68hc11-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] mmix-knuth-mmixware/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] moxie-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] vax-linux-gnu/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] xstormy16-elf/make.out:insn-automata.c:1:0: error: ISO C forbids an empty translation unit [-Werror=edantic] -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Component|target |rtl-optimization Summary|crx-elf insn-automata.c:|insn-automata.c: empty |empty translation unit |translation unit http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug target/44754] New: m32c_pragma_memregs / m32c_pragma_address warnings
gcc -c -DIN_GCC_FRONTEND -DIN_GCC_FRONTEND -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/config/m32c/m32c-pragma.c ../../../gcc/gcc/config/m32c/m32c-pragma.c: In function m32c_pragma_memregs: ../../../gcc/gcc/config/m32c/m32c-pragma.c:75:23: error: assignment makes integer from pointer without a cast [-Werror] ../../../gcc/gcc/config/m32c/m32c-pragma.c: In function m32c_pragma_address: ../../../gcc/gcc/config/m32c/m32c-pragma.c:99:15: error: variable var_str set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors make[1]: *** [m32c-pragma.o] Error 1 -- Summary: m32c_pragma_memregs / m32c_pragma_address warnings Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: m32c-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44754
[Bug target/44755] New: picochip.md enum types mismatch
attr_schedType [-Werror=enum-compare] ../../../gcc/gcc/config/picochip/picochip.md:2566:27: error: comparison between enum picochip_dfa_type and enum attr_schedType [-Werror=enum-compare] cc1: all warnings being treated as errors make[1]: *** [insn-attrtab.o] Error 1 make[1]: Leaving directory `/user/inria/fsf/multi/picochip-elf/gcc' make: *** [all-gcc] Error 2 -- Summary: picochip.md enum types mismatch Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: picochip-elf OtherBugsDependingO 44433 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44755
[Bug bootstrap/44756] New: [meta-bug] --enable-werror-always issues
Issues to be fixed before --enable-werror-always with a recent gcc compiler can be required for cross build tests: In order to get better coverage for non-native targets on i686-pc-linux-gnu, I've tried to build a configuration for each other target architecture directory configured with --enable-werror-always: alpha-linux-gnu hppa-linux-gnu mips-elf sh-elf arc-elf ia64-elfmmix-knuth-mmixware sparc-elf arm-eabi iq2000-elf mn10300-elf spu-elf avr-elf lm32-elfmoxie-elfv850-elf bfin-elf m32c-elfpdp11-elfvax-linux-gnu cris-elf m32r-elfpicochip-elf xstormy16-elf crx-elf m68hc11-elf ppc-elf xtensa-elf fr30-elf m68k-elfrx-elf frv-elf mcore-elf s390-linux-gnu h8300-elfmep-elf score-elf out of these 37 configurations, only seven succeeded: alpha-linux-gnu hppa-linux-gnu ia64-elf mips-elf ppc-elf s390-linux-gnu sparc-elf -- Summary: [meta-bug] --enable-werror-always issues Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: meta-bug Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org BugsThisDependsOn: 44749,44750,44751,44752,44754,44755 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44756
[Bug target/44757] New: lm32.md: In function �gen_ashlsi3�:unused variable �one�
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-emit.c -o insn-emit.o ../../../gcc/gcc/config/lm32/lm32.md: In function gen_ashlsi3: ../../../gcc/gcc/config/lm32/lm32.md:827:15: error: unused variable one [-Werror=unused-variable] cc1: all warnings being treated as errors -- Summary: lm32.md: In function gen_ashlsi3:unused variable one Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: lm32-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44757
[Bug target/44758] New: frv.md: incompatible enum comparisons / return
echo timestamp s-attrtab gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-attrtab.c -o insn-attrtab.o ../../../gcc/gcc/config/frv/frv.md: In function bypass_p: ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ... ../../../gcc/gcc/config/frv/frv.md: In function insn_default_latency: ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ... ../../../gcc/gcc/config/frv/frv.md: In function internal_dfa_insn_code: ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ... ... message repease for more than 2000 lines... ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ../../../gcc/gcc/config/frv/frv.md:348:17: error: comparison between frv_cpu_t and enum attr_cpu [-Werror=enum-compare] ../../../gcc/gcc/config/frv/frv.md: In function get_attr_acc_group: ../../../gcc/gcc/config/frv/frv.md:363:1: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] cc1: all warnings being treated as errors make[1]: *** [insn-attrtab.o] Error 1 make[1]: Leaving directory `/user/inria/fsf/multi/frv-elf/gcc' make: *** [all-gcc] Error 2 -- Summary: frv.md: incompatible enum comparisons / return Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: frv-elf OtherBugsDependingO 44433,44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44758
[Bug target/44759] New: mn10300.md signed/unsigned comparisons
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-attrtab.c -o insn-attrtab.o ../../../gcc/gcc/config/mn10300/mn10300.md: In function get_attr_cc: ../../../gcc/gcc/config/mn10300/mn10300.md:1249:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1250:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1251:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1252:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1300:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1301:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1302:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] ../../../gcc/gcc/config/mn10300/mn10300.md:1303:34: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] cc1: all warnings being treated as errors make[1]: *** [insn-attrtab.o] Error 1 make[1]: Leaving directory `/user/inria/fsf/multi/mn10300-elf/gcc' make: *** [all-gcc] Error 2 -- Summary: mn10300.md signed/unsigned comparisons Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: mn10300-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44759
[Bug target/44760] New: iq2000.md warnings
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-emit.c -o insn-emit.o ../../../gcc/gcc/config/iq2000/iq2000.md: In function gen_indirect_jump: ../../../gcc/gcc/config/iq2000/iq2000.md:1343:2: error: implicit declaration of function gen_indirect_jump_internal2 [-Werror=implicit-function-declaration] ../../../gcc/gcc/config/iq2000/iq2000.md:1343:2: error: passing argument 1 of emit_jump_insn makes pointer from integer without a cast [-Werror] ../../../gcc/gcc/rtl.h:1671:12: note: expected rtx but argument is of type int ../../../gcc/gcc/config/iq2000/iq2000.md: In function gen_tablejump: ../../../gcc/gcc/config/iq2000/iq2000.md:1370:2: error: implicit declaration of function gen_tablejump_internal2 [-Werror=implicit-function-declaration] ../../../gcc/gcc/config/iq2000/iq2000.md:1370:2: error: passing argument 1 of emit_jump_insn makes pointer from integer without a cast [-Werror] ../../../gcc/gcc/rtl.h:1671:12: note: expected rtx but argument is of type int cc1: all warnings being treated as errors make[1]: *** [insn-emit.o] Error 1 -- Summary: iq2000.md warnings Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: iq2000-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44760
[Bug target/44761] New: sh.md warnings
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-emit.c -o insn-emit.o ../../../gcc/gcc/config/sh/sh.md: In function gen_symGOT_load: ../../../gcc/gcc/config/sh/sh.md:8472:7: error: variable insn set but not used [-Werror=unused-but-set-variable] ../../../gcc/gcc/config/sh/sh.md: In function gen_symDTPOFF2reg: ../../../gcc/gcc/config/sh/sh.md:8688:18: error: variable insn set but not used [-Werror=unused-but-set-variable] ../../../gcc/gcc/config/sh/sh.md: In function gen_symTPOFF2reg: ../../../gcc/gcc/config/sh/sh.md:8739:17: error: variable insn set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors make[1]: *** [insn-emit.o] Error 1 make[1]: Leaving directory `/user/inria/fsf/multi/sh-elf/gcc' make: *** [all-gcc] Error 2 -- Summary: sh.md warnings Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: sh-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44761
[Bug target/44762] New: score/predicates.md warnings
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf insn-preds.c -o insn-preds.o ../../../gcc/gcc/config/score/predicates.md: In function score_load_multiple_operation_1: ../../../gcc/gcc/config/score/predicates.md:92:7: error: variable src_addr set but not used [-Werror=unused-but-set-variable] ../../../gcc/gcc/config/score/predicates.md: In function score_store_multiple_operation_1: ../../../gcc/gcc/config/score/predicates.md:127:7: error: variable dest_addr set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors make[1]: *** [insn-preds.o] Error 1 make[1]: Leaving directory `/user/inria/fsf/multi/score-elf/gcc' make: *** [all-gcc] Error 2 -- Summary: score/predicates.md warnings Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: score-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44762
[Bug rtl-optimization/44764] New: ok_for_base_p_1: unused paraemter regno
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/caller-save.c -o caller-save.o In file included from ../../../gcc/gcc/caller-save.c:39:0: ../../../gcc/gcc/addresses.h: In function ok_for_base_p_1: ../../../gcc/gcc/addresses.h:50:27: error: unused parameter regno [-Werror=unused-parameter] cc1: all warnings being treated as errors make[1]: *** [caller-save.o] Error 1 -- Summary: ok_for_base_p_1: unused paraemter regno Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: rx-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44764
[Bug middle-end/44765] New: gen_rtx_REG can make out-of-bounds access for INVALID_REGNUM
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/emit-rtl.c -o emit-rtl.o ../../../gcc/gcc/emit-rtl.c: In function gen_rtx_REG: ../../../gcc/gcc/emit-rtl.c:635:17: error: array subscript is above array bounds [-Werror=array-bounds] -- Summary: gen_rtx_REG can make out-of-bounds access for INVALID_REGNUM Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: xtensa-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44765
[Bug middle-end/44766] New: set-but-not-used warning in can_store_by_pieces
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/expr.c -o expr.o ../../../gcc/gcc/expr.c: In function can_store_by_pieces: ../../../gcc/gcc/expr.c:2308:7: error: variable cst set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors -- Summary: set-but-not-used warning in can_store_by_pieces Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: arc-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44766
[Bug other/44767] New: LOCAL_ALIGNMENT used as unsigned value
LOCAL_ALIGNMENT has no documented required signed / unsignedness, yet it is used in a conditional expression together with an unsigned value. gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/except.c -o except.o ../../../gcc/gcc/except.c: In function sjlj_build_landing_pads: ../../../gcc/gcc/except.c:1352:19: error: signed and unsigned type in conditional expression [-Werror=sign-compare] cc1: all warnings being treated as errors -- Summary: LOCAL_ALIGNMENT used as unsigned value Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: bfin-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44767
[Bug middle-end/44769] New: warning for split_double when HOST_BITS_PER_WIDE_INT BITS_PER_WORD
Considering GCC's memory requirements, since it's unlikely that we'll ever have an spu-elf native compiler, it-s all right when we can't match the BITS_PER_WORD definition of 128 with a HOST_WIDE_INT type of equal or larger width; half as wide should be enough. gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/final.c -o final.o ../../../gcc/gcc/final.c: In function split_double: ../../../gcc/gcc/final.c:3831:4: error: left shift count = width of type [-Werror] ../../../gcc/gcc/final.c:3854:4: error: right shift count = width of type [-Werror] cc1: all warnings being treated as errors -- Summary: warning for split_double when HOST_BITS_PER_WIDE_INT BITS_PER_WORD Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu GCC target triplet: spu-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44769
[Bug rtl-optimization/44770] New: unused variable in initiate_bb_reg_pressure_info
'i' is missing an ATTRIBUTE_UNUSED, or could be moved inside the #ifdef EH_RETURN_DATA_REGNO block. gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf ../../../gcc/gcc/haifa-sched.c -o haifa-sched.o ../../../gcc/gcc/haifa-sched.c: In function initiate_bb_reg_pressure_info: ../../../gcc/gcc/haifa-sched.c:717:16: error: unused variable i [-Werror=unused-variable] cc1: all warnings being treated as errors make[1]: *** [haifa-sched.o] Error 1 -- Summary: unused variable in initiate_bb_reg_pressure_info Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: m32r-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44770
[Bug target/44771] New: m68k_expand_prologue: variable set but not used
gcc -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -DCLOOG_PPL_BACKEND -I/usr/include/libelf \ ../../../gcc/gcc/config/m68k/m68k.c -o m68k.o ../../../gcc/gcc/config/m68k/m68k.c: In function m68k_expand_prologue: ../../../gcc/gcc/config/m68k/m68k.c:1045:25: error: variable insn set but not used [-Werror=unused-but-set-variable] cc1: all warnings being treated as errors make[1]: *** [m68k.o] Error 1 -- Summary: m68k_expand_prologue: variable set but not used Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC target triplet: m68k-elf OtherBugsDependingO 44756 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44771
[Bug bootstrap/44335] [4.6 regression] gcc-4.6-20100529 java bootstrap failure on arm-linux-gnueabi
--- Comment #4 from amylaar at gcc dot gnu dot org 2010-07-01 19:14 --- Alternatively, we could hookize FLOAT_WORDS_BIG_ENDIAN, and make jcf-parse.c include target.h so it gets access to the target vector. This would also be better since then the code in jfc-parse.c no longer depends on the target. If there are concerns about the performance impact an real.c, we could leave the interface for the targets to define FLOAT_WORDS_BIG_ENDIAN, and let real.c use the macro directly, while requiring that front ends use the target hook defined in targhooks.c . -- amylaar at gcc dot gnu dot org changed: What|Removed |Added CC||amylaar at gcc dot gnu dot ||org OtherBugsDependingO||44566, 44756 nThis|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44335
[Bug rtl-optimization/44752] insn-automata.c: empty translation unit
--- Comment #3 from amylaar at gcc dot gnu dot org 2010-07-01 22:39 --- (In reply to comment #2) Is that really printing -Werror=edantic or a problem copy+pasting? Yes, it's really printing that. I think that that's because gcc thinks -pedantic starts with -W... in opts.c:option_name we have: /* A warning classified as an error. */ if ((orig_diag_kind == DK_WARNING || orig_diag_kind == DK_PEDWARN) diag_kind == DK_ERROR) return concat (cl_options[OPT_Werror_].opt_text, /* Skip over -W. */ cl_options[option_index].opt_text + 2, NULL); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44752
[Bug middle-end/44566] configuration with multiple targets / backends is not supported.
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-06-30 18:48 --- Subject: Bug 44566 Author: amylaar Date: Wed Jun 30 18:47:43 2010 New Revision: 161633 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=161633 Log: PR other/44566 * coretypes.h [!USED_FOR_TARGET] (reg_class_t): Define. * target.def (struct gcc_target): Replace enum reg_class with reg_class_t in hook argument / return types. * doc/tm.texi.in (TARGET_SECONDARY_RELOAD): Likewise. (TARGET_IRA_COVER_CLASSES, TARGET_MEMORY_MOVE_COST): Likewise. (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise. * targhooks.h (default_branch_target_register_class): Likewise. (default_ira_cover_classes, default_secondary_reload): Likewise. (default_memory_move_cost, default_register_move_cost): Likewise. * targhooks.c (default_branch_target_register_class): Likewise. (default_ira_cover_classes, default_secondary_reload): Likewise. (default_memory_move_cost, default_register_move_cost): Likewise. * reload.c (push_secondary_reload, secondary_reload_class): Likewise. * bt-load.c (branch_target_load_optimize): Likewise. * ira.c (setup_cover_and_important_classes): Likewise. * ira-costs.c (copy_cost): Likewise. * reload1.c (emit_input_reload_insns): Likewise. * config/alpha/alpha.c (alpha_secondary_reload): Likewise. * config/frv/frv.c (frv_secondary_reload): Likewise. * config/s390/s390.c (s390_secondary_reload): Likewise. * config/i386/i386.c (i386_ira_cover_classes): Likewise. (ix86_secondary_reload, ix86_memory_move_cost): Likewise. (ix86_register_move_cost): Likewise. * config/sh/sh-protos.h (sh_secondary_reload): Likewise. * config/sh/sh.c (sh_target_reg_class, sh_secondary_reload): Likewise. * config/xtensa/xtensa.c (xtensa_secondary_reload): Likewise. * config/xtensa/xtensa-protos.h (xtensa_secondary_reload): Likewise. * config/rs6000/rs6000.c (rs6000_secondary_reload): Likewise. (rs6000_ira_cover_classes): Likewise. * config/picochip/picochip.c (picochip_secondary_reload): Likewise. * config/picochip/picochip-protos.h (picochip_secondary_reload): Likewise. * config/pa/pa.c (pa_secondary_reload): Likewise. * config/mips/mips.c (mips_ira_cover_classes): Likewise. * config/bfin/bfin.c (bfin_secondary_reload): Likewise. * config/ia64/ia64.c (ia64_register_move_cost): Likewise. * doc/tm.texi: Regenerate. Modified: trunk/gcc/ChangeLog trunk/gcc/bt-load.c trunk/gcc/config/alpha/alpha.c trunk/gcc/config/bfin/bfin.c trunk/gcc/config/frv/frv.c trunk/gcc/config/i386/i386.c trunk/gcc/config/ia64/ia64.c trunk/gcc/config/mips/mips.c trunk/gcc/config/pa/pa.c trunk/gcc/config/picochip/picochip-protos.h trunk/gcc/config/picochip/picochip.c trunk/gcc/config/rs6000/rs6000.c trunk/gcc/config/s390/s390.c trunk/gcc/config/sh/sh-protos.h trunk/gcc/config/sh/sh.c trunk/gcc/config/xtensa/xtensa-protos.h trunk/gcc/config/xtensa/xtensa.c trunk/gcc/coretypes.h trunk/gcc/doc/tm.texi trunk/gcc/ira-costs.c trunk/gcc/ira.c trunk/gcc/reload.c trunk/gcc/reload1.c trunk/gcc/target.def trunk/gcc/targhooks.c trunk/gcc/targhooks.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44566
[Bug other/44034] target hooks are hard to maintain
--- Comment #8 from amylaar at gcc dot gnu dot org 2010-06-30 19:08 --- Patch committed to mainline. AFAIK the only lingering issue is this one: http://gcc.gnu.org/ml/gcc-patches/2010-06/msg03046.html (And of course the stuff that needs some help from the FSF - PR44035, PR44033, PR44032) -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44034
[Bug other/44034] target hooks are hard to maintain
--- Comment #6 from amylaar at gcc dot gnu dot org 2010-06-29 18:22 --- Subject: Bug 44034 Author: amylaar Date: Tue Jun 29 18:22:00 2010 New Revision: 161547 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=161547 Log: gcc: PR other/44034 * target.def, doc/tm.texi.in, genhooks.c: New files. * target.h: Instead of defining individual hook members, define DEFHOOKPOD / DEFHOOK / DEFHOOK_UNDOC / HOOKSTRUCT and include target.def. * target-def.h: Instead of defining individual hook initializers, include target-hooks-def.h. * df-scan.c, haifa-sched.c, sel-sched.c: Rename targetm members: targetm.live_on_entry - targetm.extra_live_on_entry targetm.sched.md_finish -targetm.sched.finish targetm.sched.md_init - targetm.sched.init targetm.sched.md_init_global - targetm.sched.init_global targetm.asm_out.unwind_label - targetm.asm_out.emit_unwind_label targetm.asm_out.except_table_label - targetm.asm_out.emit_except_table_label targetm.asm_out.visibility - targetm.asm_out.assemble_visibility targetm.target_help - targetm.help targetm.vectorize.builtin_support_vector_misalignment - targetm.vectorize.support_vector_misalignment targetm.file_start_app_off - targetm.asm_file_start_app_off targetm.file_start_file_directive - targetm.asm_file_start_file_directive * dwarf2out.c, opts.c, tree-vect-data-refs.c, except.c: Likewise. * varasm.c, config/alpha/alpha.c, config/cris/cris.c: Likewise. * gcc/config/spu/spu.c, config/ia64/ia64.c: Rename target macros: TARGET_VECTOR_ALIGNMENT_REACHABLE - TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE TARGET_SUPPORT_VECTOR_MISALIGNMENT - TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT TARGET_UNWIND_EMIT - TARGET_ASM_UNWIND_EMIT * config/rs6000/rs6000.c, config/arm/arm.c: Likewise. * Makefile.in (TARGET_H): Depend on target.def. (TARGET_DEF_H): Depend on target-hooks-def.h. (target-hooks-def.h, tm.texi, s-target-hooks-def-h): New rules. (s-tm-texi, build/genhooks.o, build/genhooks): Likewise. * doc/tm.texi: Regenerate. gcc/c-family: * c-common.c: Rename targetm member: targetm.enum_va_list - targetm.enum_va_list_p gcc/po: * EXCLUDES: Add genhooks.c. Index: gcc/doc/tm.texi Added: trunk/gcc/doc/tm.texi.in - copied, changed from r161540, trunk/gcc/doc/tm.texi trunk/gcc/genhooks.c trunk/gcc/target.def Modified: trunk/gcc/ChangeLog trunk/gcc/Makefile.in trunk/gcc/c-family/ChangeLog trunk/gcc/c-family/c-common.c trunk/gcc/config/alpha/alpha.c trunk/gcc/config/arm/arm.c trunk/gcc/config/cris/cris.c trunk/gcc/config/ia64/ia64.c trunk/gcc/config/rs6000/rs6000.c trunk/gcc/config/spu/spu.c trunk/gcc/df-scan.c trunk/gcc/doc/tm.texi trunk/gcc/dwarf2out.c trunk/gcc/except.c trunk/gcc/haifa-sched.c trunk/gcc/opts.c trunk/gcc/po/ChangeLog trunk/gcc/po/EXCLUDES trunk/gcc/sel-sched.c trunk/gcc/target-def.h trunk/gcc/target.h trunk/gcc/tree-vect-data-refs.c trunk/gcc/varasm.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44034
[Bug bootstrap/44719] [4.6 Regression] Make warning: overriding command
--- Comment #1 from amylaar at gcc dot gnu dot org 2010-06-29 19:13 --- Sorry, I certainly didn't mean to put a rule there; not sure if it was a typo or some smartass-autoindent running wild. I've removed the offending tab. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44719
[Bug middle-end/44566] configuration with multiple targets / backends is not supported.
--- Comment #7 from amylaar at gcc dot gnu dot org 2010-06-26 10:22 --- The patches have been tested posted to gcc-patches: http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02492.html http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02452.html http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02495.html http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02618.html http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02645.html http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02649.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44566