[Bug c++/18016] Warn about member variables initialized with itself
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18016 --- Comment #10 from Manuel López-Ibáñez manu at gcc dot gnu.org 2010-12-22 09:17:42 UTC --- Like others commenting here, I don't understand why a(a) should not warn only with -Winit-self. On the other hand, I always thought that Winit-self is a bad idea. Although the patch does not fixes many cases and thus, we shouldn't close this PR, it is better than nothing. About the location, don't we have a better location at that point? I am thinking that X() : j(j), #2 i(i) #3 {} should give warnings in #2 and #3. Please, resubmit and ping. I think this is small enough to go in GCC 4.6.
[Bug fortran/47039] New: Support warnings/errors for non-F features.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47039 Summary: Support warnings/errors for non-F features. Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: thenl...@users.sourceforge.net The Fortran compiler should have a feature like g95 -std=F which only accepts code conforming to the F programming language/Fortran subset.
[Bug fortran/47039] Support warnings/errors for non-F features.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47039 Tobias Burnus burnus at gcc dot gnu.org changed: What|Removed |Added CC||burnus at gcc dot gnu.org --- Comment #1 from Tobias Burnus burnus at gcc dot gnu.org 2010-12-22 09:55:28 UTC --- My impression is that none of the core developers would be interested in implementing him-/herself this feature. However, a patch implementing it would be surely accepted. (For me: I think F was a nice idea but it has been superseded by Fortran 2003/2008. At least I would miss the very widely supported TR 15581 [allocatable components/dummy arguments] and certain F2003 (and F2008) features when restricting myself to F, which is a not-widely adopted subset of Fortran 95. -- In terms of development, there are still enough other bugs and missing F2003/2008 which I think have a higher priority.)
[Bug fortran/47040] New: Make error message for empty array constructor more helpful/correct
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47040 Summary: Make error message for empty array constructor more helpful/correct Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: bur...@gcc.gnu.org Found at http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/3f6348b03eaed435 The error message: call print( [ ] ) 1 Error: Empty array constructor at (1) is not allowed is misleading at only empty array constructors without typespec are invalid. Thus, the following is valid: call print( [ real :: ] ) Expect: Error message: Error: Empty array constructor at (1) is not allowed without type-spec or Error: Empty array constructor without type-spec at (1) is not allowed F2008: R468 array-constructor is (/ ac-spec /) or lbracket ac-spec rbracket R469 ac-spec is type-spec :: or [type-spec ::] ac-value-list An empty sequence forms a zero-sized array.
[Bug c++/46941] [trans-mem] new/delete operator are unsafe
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46941 --- Comment #1 from Patrick Marlier patrick.marlier at gmail dot com 2010-12-22 10:11:54 UTC --- Created attachment 22839 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22839 proposed patch to add safe attribute to new delete operators gcc/cp/decl.c: build_library_fn_1() add transaction_safe attribute to new/delete/new []/delete [] declarations if transaction mode is enabled. Patrick Marlier.
[Bug fortran/47040] Make error message for empty array constructor more helpful/correct
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47040 --- Comment #1 from Tobias Burnus burnus at gcc dot gnu.org 2010-12-22 10:16:56 UTC --- Draft patch - feel free to take it, I am not sure when I have the time to submit it. --- a/gcc/fortran/array.c +++ b/gcc/fortran/array.c @@ -1054,7 +1054,8 @@ gfc_match_array_constructor (gfc_expr **result) goto done; else { - gfc_error (Empty array constructor at %C is not allowed); + gfc_error (Empty array constructor without type-spec at %C is not +allowed); goto cleanup; } }
[Bug fortran/47023] C_Sizeof: Rejects valid code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47023 Tobias Burnus burnus at gcc dot gnu.org changed: What|Removed |Added CC||janus at gcc dot gnu.org --- Comment #1 from Tobias Burnus burnus at gcc dot gnu.org 2010-12-22 10:28:28 UTC --- The reason for rejecting it is: if (verify_c_interop (arg-ts) != SUCCESS) { gfc_error ('%s' argument of '%s' intrinsic at %L must be be an interoperable data entity, If one looks at decl.c, one see that the check makes only sense for BT_DERIVED - but not for intrinsic variables. In decl.c one afterwards prints only an error for BT_DERIVED - otherwise only a warning is printed (which does not make sense here). And there is additionally a check for string-length == 1. * * * In decl.c, I think one should additionally check for BT_CLASS and reject the following program (currently there is just a may not be C interoperable warning as it is not BT_DERIVED). module m use iso_c_binding type t integer(c_int) :: i end type t contains subroutine test(a) bind(c) class(t) :: a end subroutine end
[Bug tree-optimization/43247] [4.3/4.4 Regression] Incorrect optimization while declaring array[1]
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43247 --- Comment #10 from Thiago Macieira thiago at kde dot org 2010-12-22 10:35:23 UTC --- This is still not fixed. I can reproduce now with a different testcase, in 4.5.1. However, this time, the same code works fine in 4.4. The reason is again accessing an array out-of-bounds for elements that we know to be there. Pay attention to the way operator== is implemented in the following code. If I compile it with -O1, it prints true as it should. If I compile it with -O2, it prints false. If I compile it with -O1 -finline-small-functions -finline -findirect-inlining -fstrict-overflow and compare the disassembly with -O2 and a suitable list of -fno-*, the code is exactly identical, except for some instructions that should perform the copy of half of m1's data into m3. So in the end the comparison fails due to comparing to garbage. === code === #include stdio.h template int N, int M, typename T class QGenericMatrix { public: QGenericMatrix(); QGenericMatrix(const QGenericMatrixN, M, T other); explicit QGenericMatrix(const T *values); bool operator==(const QGenericMatrixN, M, T other) const; private: T m[N][M];// Column-major order to match OpenGL. QGenericMatrix(int) {} // Construct without initializing identity matrix }; template int N, int M, typename T QGenericMatrixN, M, T::QGenericMatrix(const QGenericMatrixN, M, T other) { for (int col = 0; col N; ++col) for (int row = 0; row M; ++row) m[col][row] = other.m[col][row]; } template int N, int M, typename T QGenericMatrixN, M, T::QGenericMatrix(const T *values) { for (int col = 0; col N; ++col) for (int row = 0; row M; ++row) m[col][row] = values[row * N + col]; } template int N, int M, typename T bool QGenericMatrixN, M, T::operator==(const QGenericMatrixN, M, T other) const { for (int index = 0; index N * M; ++index) { if (m[0][index] != other.m[0][index]) return false; } return true; } typedef double qreal; typedef QGenericMatrix2, 2, qreal QMatrix2x2; int main(int , char**) { qreal m1Data[] = {0.0, 0.0, 0.0, 0.0}; QMatrix2x2 m1(m1Data); QMatrix2x2 m3 = m1; puts((m1 == m3) ? true : false); } === code === common args: -fno-exceptions -fno-rtti -fverbose-asm -march=core2 -mfpmath=sse (though x87 math also shows the same problem) prints true with: -O1 -finline-small-functions -finline -findirect-inlining -fstrict-overflow prints false with: -O2 -fno-align-functions -fno-align-jumps -fno-align-labels -fno-caller-saves -fno-tree-switch-conversion -fno-tree-vrp -fno-crossjumping -fno-cse-follow-jumps -fno-expensive-optimizations -fno-gcse -fno-ipa-cp -fno-ipa-sra -fno-optimize-register-move -fno-optimize-sibling-calls -fno-peephole2 -fno-regmove -fno-reorder-blocks -fno-reorder-functions -fno-rerun-cse-after-loop -fno-schedule-insns2 -fno-strict-aliasing -fno-strict-aliasing -fno-thread-jumps -fno-tree-builtin-call-dce -fno-tree-pre
[Bug fortran/46978] [4.6 Regression] TRANSPOSE with RESHAPE and ALLOCATE: Segfault
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46978 Mikael Morin mikael at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2010.12.22 12:37:08 AssignedTo|unassigned at gcc dot |mikael at gcc dot gnu.org |gnu.org | Ever Confirmed|0 |1
[Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934 --- Comment #8 from Martin Jambor jamborm at gcc dot gnu.org 2010-12-22 12:57:00 UTC --- Author: jamborm Date: Wed Dec 22 12:56:54 2010 New Revision: 168168 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168168 Log: 2010-12-22 Martin Jambor mjam...@suse.cz PR tree-optimization/45934 PR tree-optimization/46302 PR tree-optimization/46987 * gimple-fold.c (get_base_binfo_for_type): Removed. (gimple_get_relevant_ref_binfo): Likewise. (gimple_fold_obj_type_ref_call): Dumb down to 4.5 functionality, removed parameter inplace, updated the caller. * gimple.h (gimple_get_relevant_ref_binfo): Remove declaration. * ipa-cp.c (ipcp_propagate_types): Do not derive types from constants. (ipcp_discover_new_direct_edges): Do not do devirtualization based on constants. * ipa-prop.c (compute_known_type_jump_func): Use get_ref_base_and_extent and get_binfo_at_offset instead of gimple_get_relevant_ref_binfo. (compute_known_type_jump_func): Likewise. (update_jump_functions_after_inlining): Do not derive types from constants. (try_make_edge_direct_virtual_call): Likewise. * tree.c (get_binfo_at_offset): Get type from non-artificial fields. * testsuite/g++.dg/ipa/ipcp-ivi-1.C: Removed. * testsuite/g++.dg/ipa/ivinline-6.C: Likewise. * testsuite/g++.dg/otr-fold-1.C: Likewise. * testsuite/g++.dg/otr-fold-2.C: Likewise. * testsuite/g++.dg/tree-ssa/pr43411.C: Xfail dump scan. * testsuite/g++.dg/tree-ssa/pr45605.C: Likewise. * testsuite/g++.dg/tree-ssa/pr46987.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr46987.C Removed: trunk/gcc/testsuite/g++.dg/ipa/ipcp-ivi-1.C trunk/gcc/testsuite/g++.dg/ipa/ivinline-6.C trunk/gcc/testsuite/g++.dg/otr-fold-1.C trunk/gcc/testsuite/g++.dg/otr-fold-2.C Modified: trunk/gcc/ChangeLog trunk/gcc/gimple-fold.c trunk/gcc/gimple.h trunk/gcc/ipa-cp.c trunk/gcc/ipa-prop.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/tree-ssa/pr43411.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr45605.C trunk/gcc/tree.c
[Bug tree-optimization/46987] [4.6 Regression] g++.dg/torture/covariant-1.C ICE: double free or corruption with -fno-inline
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46987 --- Comment #5 from Martin Jambor jamborm at gcc dot gnu.org 2010-12-22 12:57:00 UTC --- Author: jamborm Date: Wed Dec 22 12:56:54 2010 New Revision: 168168 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168168 Log: 2010-12-22 Martin Jambor mjam...@suse.cz PR tree-optimization/45934 PR tree-optimization/46302 PR tree-optimization/46987 * gimple-fold.c (get_base_binfo_for_type): Removed. (gimple_get_relevant_ref_binfo): Likewise. (gimple_fold_obj_type_ref_call): Dumb down to 4.5 functionality, removed parameter inplace, updated the caller. * gimple.h (gimple_get_relevant_ref_binfo): Remove declaration. * ipa-cp.c (ipcp_propagate_types): Do not derive types from constants. (ipcp_discover_new_direct_edges): Do not do devirtualization based on constants. * ipa-prop.c (compute_known_type_jump_func): Use get_ref_base_and_extent and get_binfo_at_offset instead of gimple_get_relevant_ref_binfo. (compute_known_type_jump_func): Likewise. (update_jump_functions_after_inlining): Do not derive types from constants. (try_make_edge_direct_virtual_call): Likewise. * tree.c (get_binfo_at_offset): Get type from non-artificial fields. * testsuite/g++.dg/ipa/ipcp-ivi-1.C: Removed. * testsuite/g++.dg/ipa/ivinline-6.C: Likewise. * testsuite/g++.dg/otr-fold-1.C: Likewise. * testsuite/g++.dg/otr-fold-2.C: Likewise. * testsuite/g++.dg/tree-ssa/pr43411.C: Xfail dump scan. * testsuite/g++.dg/tree-ssa/pr45605.C: Likewise. * testsuite/g++.dg/tree-ssa/pr46987.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr46987.C Removed: trunk/gcc/testsuite/g++.dg/ipa/ipcp-ivi-1.C trunk/gcc/testsuite/g++.dg/ipa/ivinline-6.C trunk/gcc/testsuite/g++.dg/otr-fold-1.C trunk/gcc/testsuite/g++.dg/otr-fold-2.C Modified: trunk/gcc/ChangeLog trunk/gcc/gimple-fold.c trunk/gcc/gimple.h trunk/gcc/ipa-cp.c trunk/gcc/ipa-prop.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/tree-ssa/pr43411.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr45605.C trunk/gcc/tree.c
[Bug tree-optimization/46302] [4.6 Regression] Program with virtual public inheritance crashes at O3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46302 --- Comment #7 from Martin Jambor jamborm at gcc dot gnu.org 2010-12-22 12:57:00 UTC --- Author: jamborm Date: Wed Dec 22 12:56:54 2010 New Revision: 168168 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168168 Log: 2010-12-22 Martin Jambor mjam...@suse.cz PR tree-optimization/45934 PR tree-optimization/46302 PR tree-optimization/46987 * gimple-fold.c (get_base_binfo_for_type): Removed. (gimple_get_relevant_ref_binfo): Likewise. (gimple_fold_obj_type_ref_call): Dumb down to 4.5 functionality, removed parameter inplace, updated the caller. * gimple.h (gimple_get_relevant_ref_binfo): Remove declaration. * ipa-cp.c (ipcp_propagate_types): Do not derive types from constants. (ipcp_discover_new_direct_edges): Do not do devirtualization based on constants. * ipa-prop.c (compute_known_type_jump_func): Use get_ref_base_and_extent and get_binfo_at_offset instead of gimple_get_relevant_ref_binfo. (compute_known_type_jump_func): Likewise. (update_jump_functions_after_inlining): Do not derive types from constants. (try_make_edge_direct_virtual_call): Likewise. * tree.c (get_binfo_at_offset): Get type from non-artificial fields. * testsuite/g++.dg/ipa/ipcp-ivi-1.C: Removed. * testsuite/g++.dg/ipa/ivinline-6.C: Likewise. * testsuite/g++.dg/otr-fold-1.C: Likewise. * testsuite/g++.dg/otr-fold-2.C: Likewise. * testsuite/g++.dg/tree-ssa/pr43411.C: Xfail dump scan. * testsuite/g++.dg/tree-ssa/pr45605.C: Likewise. * testsuite/g++.dg/tree-ssa/pr46987.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr46987.C Removed: trunk/gcc/testsuite/g++.dg/ipa/ipcp-ivi-1.C trunk/gcc/testsuite/g++.dg/ipa/ivinline-6.C trunk/gcc/testsuite/g++.dg/otr-fold-1.C trunk/gcc/testsuite/g++.dg/otr-fold-2.C Modified: trunk/gcc/ChangeLog trunk/gcc/gimple-fold.c trunk/gcc/gimple.h trunk/gcc/ipa-cp.c trunk/gcc/ipa-prop.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/tree-ssa/pr43411.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr45605.C trunk/gcc/tree.c
[Bug libgcj/44341] [4.6 Regression] libjava cross build fails when configured with --with-gmp=
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44341 --- Comment #6 from Kazumoto Kojima kkojima at gcc dot gnu.org 2010-12-22 13:19:40 UTC --- I've tried the patch on x86 cross sh4-unknown-linux-gnu. It looks all possible combinations of --with-gmp and --with-target-gmp work as expected.
[Bug tree-optimization/46987] [4.6 Regression] g++.dg/torture/covariant-1.C ICE: double free or corruption with -fno-inline
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46987 Martin Jambor jamborm at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED --- Comment #6 from Martin Jambor jamborm at gcc dot gnu.org 2010-12-22 13:23:39 UTC --- Fixed.
[Bug libgcj/44341] [4.6 Regression] libjava cross build fails when configured with --with-gmp=
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44341 --- Comment #7 from Jakub Jelinek jakub at gcc dot gnu.org 2010-12-22 13:23:22 UTC --- Another alternative would be to make the behavior different between cross and native builds. In native builds, --with-gmp{,-lib,-include} would be passed through to both gcc configury and libjava/classpath (of course, if present, --with-target-gmp* would override it for libjava/classpath), and for crosses it would do what the patch does right now (for the patch it means that for native it wouldn't add --with-gmp=$with_target_gmp to ac_configure_args if $with_target_gmp is empty (and similarly for -lib and -include).
[Bug c++/46941] [trans-mem] new/delete operator are unsafe
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46941 Aldy Hernandez aldyh at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2010.12.22 13:51:33 Ever Confirmed|0 |1 --- Comment #2 from Aldy Hernandez aldyh at gcc dot gnu.org 2010-12-22 13:51:33 UTC --- Patrick. I haven't analyzed your patch yet, but it causes the following regressions: FAIL: g++.dg/tm/pr45940-3.C (test for excess errors) FAIL: g++.dg/tm/pr45940-4.C (test for excess errors) FAIL: g++.dg/tm/pr46269.C (internal compiler error) FAIL: g++.dg/tm/pr46269.C (test for excess errors) Try to run the regression suite to test your patch first. It's a good first round of testing. You can run it with make check from the toplevel build directory. You can compare results with and without your patch. To run just the TM compiler tests you can do: make check-gcc RUNTESTFLAGS=tm.exp I have a similar patch to yours that I'm playing with, that unfortunately also causes the pr46269.C regression, though not the pr45940-* failures. I am debugging and will report shortly. Thanks.
[Bug fortran/47042] New: ICE with character pointer in function
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47042 Summary: ICE with character pointer in function Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: jvdeli...@gcc.gnu.org I am not sure this is valid code, but it gives and ICE. There is no ICE if the ptmp pointer is removed or the function is compiled outside the program block. program bug contains function get_cstring (c_str, maxlen, c_term_char) use iso_c_binding, only: c_ptr, c_char, c_null_char character(kind=c_char, len=maxlen) :: get_cstring character(kind=c_char,len=1), optional :: c_term_char character(kind=c_char), pointer:: ptmp type(c_ptr):: c_str integer:: i, maxlen call c_f_pointer (c_str, ptmp) do i=1,maxlen get_cstring(i:i) = ptmp(i) if (ptmp(i) == c_null_char) goto 10 if (present(c_term_char).and.ptmp(i) == c_term_char) goto 10 end do return 10 continue end function end program
[Bug rtl-optimization/47036] [4.6 Regression] ICE: in move_cond_jump, at sel-sched.c:4901 with -fschedule-insns -fselective-scheduling -fno-dce
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47036 Alexander Monakov amonakov at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2010.12.22 14:32:58 AssignedTo|unassigned at gcc dot |amonakov at gcc dot gnu.org |gnu.org | Ever Confirmed|0 |1 --- Comment #1 from Alexander Monakov amonakov at gcc dot gnu.org 2010-12-22 14:32:58 UTC --- Untested patch. I wonder if it has any effect on code generation (it shouldn't; I don't see how we handle moving of unconditional jumps). diff --git a/gcc/sel-sched-ir.c b/gcc/sel-sched-ir.c index 468dfd7..de40ba0 100644 --- a/gcc/sel-sched-ir.c +++ b/gcc/sel-sched-ir.c @@ -4441,9 +4441,6 @@ fallthru_bb_of_jump (rtx jump) if (!JUMP_P (jump)) return NULL; - if (any_uncondjump_p (jump)) -return single_succ (BLOCK_FOR_INSN (jump)); - if (!any_condjump_p (jump)) return NULL;
[Bug c++/18016] Warn about member variables initialized with itself
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18016 --- Comment #11 from Jonathan Wakely redi at gcc dot gnu.org 2010-12-22 14:40:07 UTC --- (In reply to comment #10) Like others commenting here, I don't understand why a(a) should not warn only with -Winit-self. I agree with Andrew, the a(a) mistake should always warn, it should be independent of -Winit-self, which exists so that -Wuninitialized doesn't warn about the common (but questionable) practice of self-initializing automatic variables to silence warnings. As I said in my mail to gcc-patches, if you want to leave a member variable uninitialized, just don't give it a mem-initializer in the constructor. Giving it a self-initializing one is just perverse. (The case of automatic variables is different, you can't just not declare it to leave it uninitialized.) Also, as -Winit-self is broken I didn't want to tie this bug to a broken feature that might be changed to not work for C++. On the other hand, I always thought that Winit-self is a bad idea. Although the patch does not fixes many cases and thus, we shouldn't close this PR, it is better than nothing. About the location, don't we have a better location at that point? I am thinking that X() : j(j), #2 i(i) #3 {} should give warnings in #2 and #3. There are various open bugs about that, e.g. PR 43064, I don't think it's possible at the moment.
[Bug target/47035] inconsistent use of libgcc/config/t-softfp
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47035 --- Comment #2 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-22 15:24:27 UTC --- This issue actually exists on linux as well. The behavior is rather complex. For example, the first instance of a compilation of trunctfxf2.c shows the missing prototype warnings ... /home/howarth/work/./gcc/xgcc -B/home/howarth/work/./gcc/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/bin/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/lib/ -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/include -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/sys-include-g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc/libgcc -I../../../gcc/libgcc/. -I../../../gcc/libgcc/../gcc -I../../../gcc/libgcc/../include -I../../../gcc/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o trunctfxf2.o -MT trunctfxf2.o -MD -MP -MF trunctfxf2.dep -fexceptions -c ../../../gcc/libgcc/../gcc/config/soft-fp/trunctfxf2.c -fvisibility=hidden -DHIDE_EXPORTS ../../../gcc/libgcc/../gcc/config/soft-fp/trunctfdf2.c:36:8: warning: no previous prototype for ‘__trunctfdf2’ [-Wmissing-prototypes] ../../../gcc/libgcc/../gcc/config/soft-fp/trunctfsf2.c:36:8: warning: no previous prototype for ‘__trunctfsf2’ [-Wmissing-prototypes] ../../../gcc/libgcc/../gcc/config/soft-fp/trunctfxf2.c:35:8: warning: no previous prototype for ‘__trunctfxf2’ [-Wmissing-prototypes] whereas the next instance properly uses '-Wno-missing-prototypes -Wno-type-limits' from libgcc/config/t-softfp... /home/howarth/work/./gcc/xgcc -B/home/howarth/work/./gcc/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/bin/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/lib/ -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/include -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/sys-include-g -O2 -m32 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector -I. -I. -I../../.././gcc -I../../../../gcc/libgcc -I../../../../gcc/libgcc/. -I../../../../gcc/libgcc/../gcc -I../../../../gcc/libgcc/../include -I../../../../gcc/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -Wno-missing-prototypes -Wno-type-limits -o trunctfxf2.o -MT trunctfxf2.o -MD -MP -MF trunctfxf2.dep -fexceptions -c ../../../../gcc/libgcc/../gcc/config/soft-fp/trunctfxf2.c -fvisibility=hidden -DHIDE_EXPORTS and doesn't generate the 'missing prototype' warnings. I am having a difficult time seeing the logic of when '-Wno-missing-prototypes -Wno-type-limits' since immediately after the second compilation of trunctfxf2.c, which gets '-Wno-missing-prototypes -Wno-type-limits', occurs... /home/howarth/work/./gcc/xgcc -B/home/howarth/work/./gcc/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/bin/ -B/home/howarth/dist/x86_64-unknown-linux-gnu/lib/ -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/include -isystem /home/howarth/dist/x86_64-unknown-linux-gnu/sys-include-g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc/libgcc -I../../../gcc/libgcc/. -I../../../gcc/libgcc/../gcc -I../../../gcc/libgcc/../include -I../../../gcc/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o unordtf2_s.o -MT unordtf2_s.o -MD -MP -MF unordtf2_s.dep -DSHARED -fexceptions -c ../../../gcc/libgcc/../gcc/config/soft-fp/unordtf2.c ../../../gcc/libgcc/../gcc/config/soft-fp/unordtf2.c:34:9: warning: no previous prototype for ‘__unordtf2’ [-Wmissing-prototypes] ../../../gcc/libgcc/../gcc/config/soft-fp/unordtf2.c: In function ‘__unordtf2’: ../../../gcc/libgcc/../gcc/config/soft-fp/unordtf2.c:37:1: warning: variable ‘B_s’ set but not used [-Wunused-but-set-variable] ../../../gcc/libgcc/../gcc/config/soft-fp/unordtf2.c:36:1: warning: variable ‘A_s’ set but not used [-Wunused-but-set-variable] where '-Wno-missing-prototypes -Wno-type-limits' is omitted. Odd.
[Bug objc/45989] Some objc.dg-struct-layout-encoding-1 tests XPASS
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45989 Dominique d'Humieres dominiq at lps dot ens.fr changed: What|Removed |Added CC||kkojima at rr dot ||iij4u.or.jp, ||sch...@linux-m68k.org --- Comment #3 from Dominique d'Humieres dominiq at lps dot ens.fr 2010-12-22 15:47:33 UTC --- t025 to t031 XPASS also on sh4-unknown-linux-gnu (default) see http://gcc.gnu.org/ml/gcc-testresults/2010-12/msg01979.html ia64-suse-linux-gnu (default) see http://gcc.gnu.org/ml/gcc-testresults/2010-12/msg01903.html On powerpc-apple-darwin9 and -m32 only t026, t030, and t031 XPASS, see http://gcc.gnu.org/ml/gcc-testresults/2010-12/msg01959.html I have tested on powerpc-apple-darwin9 and x86_64-apple-darwin10 the following more general patch: --- /opt/gcc/_gcc_clean/gcc/testsuite/objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c 2010-12-13 10:50:10.0 +0100 +++ /opt/gcc/gcc-4.6-work/gcc/testsuite/objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c 2010-12-22 14:47:33.0 +0100 @@ -243,10 +243,16 @@ switchfiles (int fields) of bugs in libobjc and the objc front-end. 25 is because vectors are not encoded. The rest are because or zero sized arrays are encoded as pointers. */ - else if (filecnt = 25) + else if (filecnt == 25 || (filecnt = 27 filecnt = 29)) { fprintf (outfile, \ -/* { dg-do run { xfail *-*-* } } */\n\ +/* { dg-do run { xfail { *86*-*-* || { powerpc*-apple-darwin* ilp32 } } } } */\n\ +/* { dg-options \-w -I%s -fgnu-runtime\ } */\n, srcdir); +} + else if (filecnt = 30) +{ + fprintf (outfile, \ +/* { dg-do run { xfail *86*-*-* } } */\n\ /* { dg-options \-w -I%s -fgnu-runtime\ } */\n, srcdir); } else It should work on all the platforms listed above, could you test it?
[Bug bootstrap/45146] Bootstrap broken at -O3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45146 Sebastian Pop spop at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Comment #1 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 16:15:28 UTC --- Trunk at r168000 passes bootstrap at -O3.
[Bug rtl-optimization/45051] [4.6 Regression]: gcc.c-torture/execute/builtins/abs-2.c and abs-3.c due to track subwords of DImode allocnos
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45051 Ian Bolton ibolton at gcc dot gnu.org changed: What|Removed |Added Status|RESOLVED|REOPENED CC||ibolton at gcc dot gnu.org Resolution|FIXED | --- Comment #7 from Ian Bolton ibolton at gcc dot gnu.org 2010-12-22 16:23:21 UTC --- (In reply to comment #5) Assuming fixed and closing. Please reopen if you still have a problem. This patch has caused SpecCPU2000 Ammp to fail for ARM -O3 thumb. I assume the patch was meant to prevent deletions that shouldn't occur. This might be what happens for the original symptomatic test, but I am now seeing extra deletions that shouldn't happen for Ammp. For example, without this patch, you get these insns somewhere in the ira dump for mm_fv_update_nonbon() from rectmm.c: (insn 3163 3161 3164 107 rectmm.c:1041 (set (reg:SI 1 r1) (plus:SI (reg:SI 1 r1) (const_int 280 [0x118]))) 4 {*arm_addsi3} (nil)) (insn 3164 3163 1730 107 rectmm.c:1041 (set (reg:SI 3 r3) (reg:SI 1 r1)) 586 {*thumb2_movsi_vfp} (nil)) With the patch, you lose the add and just get this: (insn 3164 3161 1730 107 rectmm.c:1041 (set (reg:SI 3 r3) (reg:SI 1 r1)) 586 {*thumb2_movsi_vfp} (nil)) The incrementing of r1 is perfectly legitimate and useful and removing it is a bug. Other increments of r9, ip, r0 and r3 are also lost. I think the issue might be that reg_mentioned_p() considers output registers to have been mentioned, whereas the refers_to_regno_p() does not consider an output register to have been referred to. I can see the problem with only using reg_mentioned_p() because it doesn't handle subregs, but there is also a problem with only using refers_to_regno_p(), as we can see with this segfault in Ammp. I therefore wonder if the fix might be this: Index: gcc/reload1.c === --- gcc/reload1.c (revision 168082) +++ gcc/reload1.c (working copy) @@ -8395,7 +8395,8 @@ delete_output_reload (rtx insn, int j, i if (NOTE_INSN_BASIC_BLOCK_P (i1)) return; if ((NONJUMP_INSN_P (i1) || CALL_P (i1)) - refers_to_regno_p (regno, regno + nregs, PATTERN (i1), NULL)) + (refers_to_regno_p (regno, regno + nregs, PATTERN (i1), NULL) + || reg_mentioned_p (reg, PATTERN (i1 { /* If this is USE in front of INSN, we only have to check that there are no more references than accounted for by inheritance. */ I am heading off for Christmas vacation shortly, so cannot look into this any further, but I wanted to record my findings so far publicly. Apologies if there is missing information. I return to work Jan 4th.
[Bug target/47038] gcc.dg/pr46685.c FAILs on Solaris 10/SPARC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47038 --- Comment #1 from Sean McGovern gseanmcg at gmail dot com 2010-12-22 16:27:40 UTC --- Hmmm... is this a dup of pr40483? Can someone confirm? If so, I guess I'm hooped on Solaris 10. Should XFAIL?
[Bug middle-end/47019] [4.6 Regression] ICE: in rename_uses, at sese.c:535 with -O -ftree-pre -fgraphite-identity -fno-tree-copy-prop
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47019 Sebastian Pop spop at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2010.12.22 16:55:09 AssignedTo|unassigned at gcc dot |spop at gcc dot gnu.org |gnu.org | Ever Confirmed|0 |1 --- Comment #1 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 16:55:09 UTC --- This is due to the fact that the SSA representation is not in loop-closed form: we are defining and using an SSA_NAME in two different loops without a loop-close-phi node in between: loop_1 pretmp.15_60 = offset.3_18 + pretmp.15_59; end_1 loop_2 D.1564_26 = pretmp.15_60; end_2
[Bug middle-end/47019] [4.6 Regression] ICE: in rename_uses, at sese.c:535 with -O -ftree-pre -fgraphite-identity -fno-tree-copy-prop
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47019 --- Comment #2 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 17:07:27 UTC --- The SSA is in loop-closed form, the two loops are nested: loop_1 D_60 = ... loop_2 ... = D_60 end_2 end_1 The problem is elsewhere. I'm still investigating.
[Bug tree-optimization/43247] [4.3/4.4 Regression] Incorrect optimization while declaring array[1]
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43247 Andrew Pinski pinskia at gcc dot gnu.org changed: What|Removed |Added Known to work|| Known to fail|| --- Comment #11 from Andrew Pinski pinskia at gcc dot gnu.org 2010-12-22 17:48:55 UTC --- The reason is again accessing an array out-of-bounds for elements that we know to be there. No that is undefined and different from the original testcase.
[Bug c++/47003] [4.6 Regression] ice in stabilize_expr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47003 Jason Merrill jason at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED CC||jason at gcc dot gnu.org --- Comment #3 from Jason Merrill jason at gcc dot gnu.org 2010-12-22 18:05:48 UTC --- Mine.
[Bug bootstrap/45146] Bootstrap broken at -O3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45146 Jack Howarth howarth at nitro dot med.uc.edu changed: What|Removed |Added CC||howarth at nitro dot ||med.uc.edu --- Comment #2 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-22 18:18:16 UTC --- At r168176, while I don't see a bootstrap failure at the standard '-g -O2', when I add... Index: gcc/opts.c === --- gcc/opts.c(revision 168176) +++ gcc/opts.c(working copy) @@ -458,6 +458,9 @@ { OPT_LEVELS_1_PLUS, OPT_fcombine_stack_adjustments, NULL, 1 }, /* -O2 optimizations. */ +#ifdef HAVE_cloog +{ OPT_LEVELS_2_PLUS, OPT_fgraphite_identity, NULL, 1 }, +#endif { OPT_LEVELS_2_PLUS, OPT_finline_small_functions, NULL, 1 }, { OPT_LEVELS_2_PLUS, OPT_findirect_inlining, NULL, 1 }, { OPT_LEVELS_2_PLUS, OPT_fpartial_inlining, NULL, 1 }, I do get... Comparing stages 2 and 3 warning: gcc/cc1-checksum.o differs warning: gcc/cc1obj-checksum.o differs warning: gcc/cc1objplus-checksum.o differs warning: gcc/cc1plus-checksum.o differs Bootstrap comparison failure! gcc/alias.o differs gcc/attribs.o differs gcc/bb-reorder.o differs gcc/bitmap.o differs gcc/bt-load.o differs ... for about every binary.
[Bug c/47043] New: allow deprecating enum values
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47043 Summary: allow deprecating enum values Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: drepper@gmail.com The deprecated is nice and it's use should be expanded. Sometimes enum values have to be deprecated and it would be useful if one could write this: enum { newval, oldval __attribute__ ((deprecated)) }; Any use of 'oldval' should provoke the usual warning.
[Bug c/47043] allow deprecating enum values
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47043 Steven Bosscher steven at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2010.12.22 18:34:01 CC||steven at gcc dot gnu.org Ever Confirmed|0 |1 --- Comment #1 from Steven Bosscher steven at gcc dot gnu.org 2010-12-22 18:34:01 UTC --- Interesting idea.
Re: [Bug bootstrap/45146] Bootstrap broken at -O3
We do bootstrap on amd64-linux the graphite branch for every commit, and that would be the equivalent of your patch. Please open a new bug for tracking this issue. Thanks, Sebastian
[Bug bootstrap/45146] Bootstrap broken at -O3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45146 --- Comment #3 from sebpop at gmail dot com sebpop at gmail dot com 2010-12-22 18:36:31 UTC --- We do bootstrap on amd64-linux the graphite branch for every commit, and that would be the equivalent of your patch. Please open a new bug for tracking this issue. Thanks, Sebastian
[Bug target/46915] Wrong code is generated for conditional branch followed by zero length asm
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46915 --- Comment #15 from John David Anglin danglin at gcc dot gnu.org 2010-12-22 18:47:04 UTC --- Author: danglin Date: Wed Dec 22 18:46:57 2010 New Revision: 168177 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168177 Log: Backport from mainline: 2010-12-18 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/46915 * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead of next_real_insn. Search forward checking for both ASM_INPUT and ASM_OPERANDS asms until exit condition is found. (branch_needs_nop_p): Likewise. (use_skip_p): New function. (output_cbranch): Use use_skip_p. (output_bb, output_bvb): Likewise. 2009-06-25 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/40468 * pa.c (branch_to_delay_slot_p, branch_needs_nop_p): New functions. (output_cbranch): Use new functions. (output_bb, output_bvb, output_dbra, output_movb): Likewise. Modified: branches/gcc-4_4-branch/gcc/ChangeLog branches/gcc-4_4-branch/gcc/config/pa/pa.c
[Bug target/40468] [4.5 Regression] FAIL: gcc.c-torture/execute/20061031-1.c execution, -Os
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40468 --- Comment #4 from John David Anglin danglin at gcc dot gnu.org 2010-12-22 18:47:05 UTC --- Author: danglin Date: Wed Dec 22 18:46:57 2010 New Revision: 168177 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168177 Log: Backport from mainline: 2010-12-18 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/46915 * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead of next_real_insn. Search forward checking for both ASM_INPUT and ASM_OPERANDS asms until exit condition is found. (branch_needs_nop_p): Likewise. (use_skip_p): New function. (output_cbranch): Use use_skip_p. (output_bb, output_bvb): Likewise. 2009-06-25 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/40468 * pa.c (branch_to_delay_slot_p, branch_needs_nop_p): New functions. (output_cbranch): Use new functions. (output_bb, output_bvb, output_dbra, output_movb): Likewise. Modified: branches/gcc-4_4-branch/gcc/ChangeLog branches/gcc-4_4-branch/gcc/config/pa/pa.c
[Bug target/40468] [4.5 Regression] FAIL: gcc.c-torture/execute/20061031-1.c execution, -Os
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40468 --- Comment #5 from John David Anglin danglin at gcc dot gnu.org 2010-12-22 18:49:31 UTC --- Author: danglin Date: Wed Dec 22 18:49:24 2010 New Revision: 168178 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168178 Log: Backport from mainline: 2010-12-18 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/46915 * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead of next_real_insn. Search forward checking for both ASM_INPUT and ASM_OPERANDS asms until exit condition is found. (branch_needs_nop_p): Likewise. (use_skip_p): New function. (output_cbranch): Use use_skip_p. (output_bb, output_bvb): Likewise. 2009-06-25 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/40468 * pa.c (branch_to_delay_slot_p, branch_needs_nop_p): New functions. (output_cbranch): Use new functions. (output_bb, output_bvb, output_dbra, output_movb): Likewise. Modified: branches/gcc-4_3-branch/gcc/ChangeLog branches/gcc-4_3-branch/gcc/config/pa/pa.c
[Bug target/46915] Wrong code is generated for conditional branch followed by zero length asm
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46915 --- Comment #16 from John David Anglin danglin at gcc dot gnu.org 2010-12-22 18:49:31 UTC --- Author: danglin Date: Wed Dec 22 18:49:24 2010 New Revision: 168178 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168178 Log: Backport from mainline: 2010-12-18 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/46915 * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead of next_real_insn. Search forward checking for both ASM_INPUT and ASM_OPERANDS asms until exit condition is found. (branch_needs_nop_p): Likewise. (use_skip_p): New function. (output_cbranch): Use use_skip_p. (output_bb, output_bvb): Likewise. 2009-06-25 John David Anglin dave.ang...@nrc-cnrc.gc.ca PR target/40468 * pa.c (branch_to_delay_slot_p, branch_needs_nop_p): New functions. (output_cbranch): Use new functions. (output_bb, output_bvb, output_dbra, output_movb): Likewise. Modified: branches/gcc-4_3-branch/gcc/ChangeLog branches/gcc-4_3-branch/gcc/config/pa/pa.c
[Bug target/46915] Wrong code is generated for conditional branch followed by zero length asm
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46915 John David Anglin danglin at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Comment #17 from John David Anglin danglin at gcc dot gnu.org 2010-12-22 18:58:20 UTC --- Fixed.
[Bug bootstrap/47044] New: bootstrap comparison failure when -O2 defaults on -fgraphite-identity
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47044 Summary: bootstrap comparison failure when -O2 defaults on -fgraphite-identity Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: howa...@nitro.med.uc.edu On x86_64-apple-darwin10 at r168176 with... Index: gcc/opts.c === --- gcc/opts.c(revision 168176) +++ gcc/opts.c(working copy) @@ -458,6 +458,9 @@ { OPT_LEVELS_1_PLUS, OPT_fcombine_stack_adjustments, NULL, 1 }, /* -O2 optimizations. */ +#ifdef HAVE_cloog +{ OPT_LEVELS_2_PLUS, OPT_fgraphite_identity, NULL, 1 }, +#endif { OPT_LEVELS_2_PLUS, OPT_finline_small_functions, NULL, 1 }, { OPT_LEVELS_2_PLUS, OPT_findirect_inlining, NULL, 1 }, { OPT_LEVELS_2_PLUS, OPT_fpartial_inlining, NULL, 1 }, applied to default on -fgraphite-identity at -O2, a bootstrap comparison failure occurs... Comparing stages 2 and 3 warning: gcc/cc1-checksum.o differs warning: gcc/cc1obj-checksum.o differs warning: gcc/cc1objplus-checksum.o differs warning: gcc/cc1plus-checksum.o differs Bootstrap comparison failure! gcc/alias.o differs gcc/attribs.o differs gcc/bb-reorder.o differs gcc/bitmap.o differs gcc/bt-load.o differs gcc/build/genattrtab.o differs gcc/build/genautomata.o differs gcc/build/genflags.o differs gcc/build/gengenrtl.o differs gcc/build/gengtype-lex.o differs gcc/build/gengtype-state.o differs ... This problem did not occur at r167670. http://gcc.gnu.org/ml/gcc-testresults/2010-12/msg00852.html ../gcc-4.6-20101222/configure --prefix=/sw --prefix=/sw/lib/gcc4.6 --mandir=/sw/share/man --infodir=/sw/lib/gcc4.6/info --enable-languages=c,c++,fortran,objc,obj-c++,java --with-gmp=/sw --with-libiconv-prefix=/sw --with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --program-suffix=-fsf-4.6 --enable-checking=yes --enable-cloog-backend=isl --enable-build-with-cxx
[Bug c++/47003] [4.6 Regression] ice in stabilize_expr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47003 --- Comment #4 from Jason Merrill jason at gcc dot gnu.org 2010-12-22 19:23:26 UTC --- Author: jason Date: Wed Dec 22 19:23:15 2010 New Revision: 168180 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168180 Log: PR c++/47003 * tree.c (stabilize_expr): Really stabilize scalar glvalues. Added: trunk/gcc/testsuite/g++.dg/init/volatile2.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/tree.c trunk/gcc/testsuite/ChangeLog
[Bug bootstrap/47044] bootstrap comparison failure when -O2 defaults on -fgraphite-identity
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47044 --- Comment #1 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-22 19:53:23 UTC --- The trigger appears to be the use of --enable-build-with-cxx with -O2 defaulted to -fgraphite-identity. Removing that configure option eliminates the bootstrap comparison failures.
[Bug tree-optimization/43247] [4.3/4.4 Regression] Incorrect optimization while declaring array[1]
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43247 --- Comment #12 from Thiago Macieira thiago at kde dot org 2010-12-22 19:55:38 UTC --- (In reply to comment #11) The reason is again accessing an array out-of-bounds for elements that we know to be there. No that is undefined and different from the original testcase. Ok. Shall I open a new report with the new information?
[Bug middle-end/47019] [4.6 Regression] ICE: in rename_uses, at sese.c:535 with -O -ftree-pre -fgraphite-identity -fno-tree-copy-prop
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47019 --- Comment #3 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 20:00:00 UTC --- Patch: http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01725.html
[Bug middle-end/47019] [4.6 Regression] ICE: in rename_uses, at sese.c:535 with -O -ftree-pre -fgraphite-identity -fno-tree-copy-prop
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47019 --- Comment #4 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 21:19:38 UTC --- Author: spop Date: Wed Dec 22 21:19:34 2010 New Revision: 168182 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=168182 Log: Fix PR47019: parameters of a SCoP are SCEV analyzable. 2010-12-22 Sebastian Pop sebastian@amd.com PR tree-optimization/47019 * sese.h (scev_analyzable_p): Parameters of a SCoP are SCEV analyzable. * gfortran.dg/graphite/pr47019.f: New. Added: trunk/gcc/testsuite/gfortran.dg/graphite/pr47019.f Modified: trunk/gcc/ChangeLog trunk/gcc/sese.h trunk/gcc/testsuite/ChangeLog
[Bug middle-end/47019] [4.6 Regression] ICE: in rename_uses, at sese.c:535 with -O -ftree-pre -fgraphite-identity -fno-tree-copy-prop
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47019 Sebastian Pop spop at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED --- Comment #5 from Sebastian Pop spop at gcc dot gnu.org 2010-12-22 21:21:01 UTC --- Fixed.
[Bug c++/47003] [4.6 Regression] ice in stabilize_expr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47003 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED CC||jakub at gcc dot gnu.org Resolution||FIXED --- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org 2010-12-22 22:04:57 UTC --- Fixed.
[Bug libstdc++/47045] New: NetBSD: define changes in ctype.h
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47045 Summary: NetBSD: define changes in ctype.h Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: t...@giga.or.at A few days ago, Joerg Sonnenberger improved the name space of NetBSD's ctype.h. He added _CTYPE before _U, _N, etc. The commit message can be seen in http://mail-index.netbsd.org/source-changes/2010/12/14/msg015830.html the change to ctype_bits.h: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys/ctype_bits.h.diff?r1=1.1r2=1.2only_with_tag=MAIN the change to gcc's ctype_base.h as distributed with NetBSD-current: http://cvsweb.netbsd.org/bsdweb.cgi/src/gnu/dist/gcc4/libstdc++-v3/config/os/bsd/netbsd/ctype_base.h.diff?r1=1.1r2=1.2only_with_tag=MAIN I'd like to see this integrated into one of the next gcc releases. Since all current releases and older development releases of NetBSD (earlier than 5.99.41) still have _U etc. it's probably a bit harder than just taking the change as above. I'm not sure how you want to do that exactly. You can test for the older NetBSD versions with _U etc. with: #include sys/param.h #if __NetBSD_Version__ 599004100 ... #endif
[Bug middle-end/46758] [4.5/4.6 Regression] -fgraphite-identity produces wrong code when using 64bit constants
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46758 Sebastian Pop spop at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED AssignedTo|unassigned at gcc dot |spop at gcc dot gnu.org |gnu.org | --- Comment #6 from Sebastian Pop spop at gcc dot gnu.org 2010-12-23 00:19:19 UTC --- Patch: http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01743.html
[Bug libstdc++/47045] NetBSD: define changes in ctype.h
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47045 Jonathan Wakely redi at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2010.12.23 01:41:53 Target Milestone|--- |4.6.0 Ever Confirmed|0 |1 --- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2010-12-23 01:41:53 UTC --- should be easy to do, can you test it if I prepare a patch?
[Bug middle-end/47046] New: gcc.target/i386/sse4_1-movntdqa.c ICEs with -fgraphite-identity
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47046 Summary: gcc.target/i386/sse4_1-movntdqa.c ICEs with -fgraphite-identity Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassig...@gcc.gnu.org ReportedBy: howa...@nitro.med.uc.edu The gcc.target/i386/sse4_1-movntdqa.c test case ICEs the compiler when -fgraphite identity is used. Executing on host: /Users/howarth/darwin_objdir/gcc/xgcc -B/Users/howarth/darwin_objdir/gcc/ /Users/howarth/gcc/gcc/testsuite/gcc.target/i386/sse4_1-movntdqa.c -O2 -msse4.1 -lm -fgraphite-identity -o ./sse4_1-movntdqa.exe(timeout = 300) /Users/howarth/gcc/gcc/testsuite/gcc.target/i386/sse4_1-movntdqa.c: In function 'sse4_1_test': /Users/howarth/gcc/gcc/testsuite/gcc.target/i386/sse4_1-movntdqa.c:34:1: internal compiler error: in rename_uses, at sese.c:544 This backtraces as... Breakpoint 1, fancy_abort (file=0x1009aeb60 ../../gcc/gcc/sese.c, line=544, function=0x100a58414 rename_uses) at ../../gcc/gcc/diagnostic.c:893 893 internal_error (in %s, at %s:%d, function, trim_filename (file), line); (gdb) bt #0 fancy_abort (file=0x1009aeb60 ../../gcc/gcc/sese.c, line=544, function=0x100a58414 rename_uses) at ../../gcc/gcc/diagnostic.c:893 #1 0x000100666c95 in copy_bb_and_scalar_dependences (bb=value temporarily unavailable, due to optimizations, region=0x143133ae0, next_e=value temporarily unavailable, due to optimizations, iv_map=0x14313f560) at ../../gcc/gcc/sese.c:543 (gdb) on x86_64-apple-darwin10 using r168197. Using built-in specs. COLLECT_GCC=dist/bin/gcc COLLECT_LTO_WRAPPER=/Users/howarth/dist/libexec/gcc/x86_64-apple-darwin10.5.0/4.6.0/lto-wrapper Target: x86_64-apple-darwin10.5.0 Configured with: ../gcc/configure --enable-checking=yes --prefix=/Users/howarth/dist --with-gmp=/sw --with-ppl=/sw --with-cloog=/sw --with-mpc=/sw --with-libiconv-prefix=/sw --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --enable-languages=c --enable-checking=yes Thread model: posix gcc version 4.6.0 20101223 (experimental) (GCC)
[Bug rtl-optimization/45051] [4.6 Regression]: gcc.c-torture/execute/builtins/abs-2.c and abs-3.c due to track subwords of DImode allocnos
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45051 --- Comment #8 from Hans-Peter Nilsson hp at gcc dot gnu.org 2010-12-23 01:56:08 UTC --- (In reply to comment #7) (insn 3163 3161 3164 107 rectmm.c:1041 (set (reg:SI 1 r1) (plus:SI (reg:SI 1 r1) (const_int 280 [0x118]))) 4 {*arm_addsi3} (nil)) I think the issue might be that reg_mentioned_p() considers output registers to have been mentioned, whereas the refers_to_regno_p() does not consider an output register to have been referred to. But r1 is an input as well as an output , i.e. referred to, so insn 3163 should have matched without your patch. I'm missing analysis on why that didn't happen. Nevertheless, I'm testing r162418 with your patch. Also, you should open a separate PR for the regression you see, not just reuse this one. Use the depends-on features for the dependency.
[Bug preprocessor/47047] New: Support for path translation in __FILE__
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47047 Summary: Support for path translation in __FILE__ Product: gcc Version: 4.1.3 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: preprocessor AssignedTo: unassig...@gcc.gnu.org ReportedBy: jo...@netbsd.org Created attachment 22841 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22841 Implement cpp -iremap __FILE__ expands to full path names in some situation, e.g. if it is used in a header found via -I/some/where. The resulting leak of the header location into the file binary is undesirable in certain situations. For NetBSD, two relevant cases are the visiblity protection in pkgsrc, which effectively turns /usr/pkg/include/foo into /.../work/.buildlink/include/foo and cross-compiling the system, which would leak /.../usr/include/foo instead of /usr/include/foo or the location of the source tree. The attached patch implements a CPP option to match the file path against a list of prefixes and substitute the prefix on match. With this patch, most references to the src and obj locations in NetBSD can be translated into the canonical positions. The patch is the version included in NetBSD against the system gcc, it can be updated if necessary.
[Bug middle-end/46892] gcc.dg/vect/vect-25.c failures with -fgraphite-identity
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46892 --- Comment #7 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-23 03:43:04 UTC --- This failure is no longer present at r168197.
[Bug middle-end/47048] New: misc vect.exp failures with -fgraphite-identity enabled at -O2.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47048 Summary: misc vect.exp failures with -fgraphite-identity enabled at -O2. Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassig...@gcc.gnu.org ReportedBy: howa...@nitro.med.uc.edu Currently from vect.exp we are failing... FAIL: gcc.dg/vect/pr32824.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/pr36493.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/pr36630.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/pr37027.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/pr37027.c scan-tree-dump-times vect vectorizing stmts using SLP 1 FAIL: gcc.dg/vect/pr38529.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-1.c scan-tree-dump-times vect vectorized 6 loops 1 FAIL: gcc.dg/vect/vect-112.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-double-reduc-1.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-double-reduc-2.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-double-reduc-3.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-double-reduc-4.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-double-reduc-6.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-double-reduc-7.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 3 XPASS: gcc.dg/vect/vect-iv-7.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-iv-8.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-iv-9.c scan-tree-dump-times vect vectorized 1 loops 2 FAIL: gcc.dg/vect/vect-multitypes-15.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-multitypes-7.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-nest-cycle-1.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-nest-cycle-2.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-nest-cycle-3.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-1.c scan-tree-dump-times vect strided access in outer loop 1 FAIL: gcc.dg/vect/vect-outer-1a.c scan-tree-dump-times vect strided access in outer loop 1 FAIL: gcc.dg/vect/vect-outer-1b.c scan-tree-dump-times vect strided access in outer loop 1 FAIL: gcc.dg/vect/vect-outer-2.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-2a.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-2c.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-3.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-3a.c scan-tree-dump-times vect step doesn't divide the vector-size 2 FAIL: gcc.dg/vect/vect-outer-3b.c scan-tree-dump-times vect strided access in outer loop 2 FAIL: gcc.dg/vect/vect-outer-3c.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4.c scan-tree-dump-times vect zero step in outer loop. 1 FAIL: gcc.dg/vect/vect-outer-4a.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4b.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4c.c scan-tree-dump-times vect zero step in outer loop. 1 FAIL: gcc.dg/vect/vect-outer-4d.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4i.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-4j.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-5.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-5.c scan-tree-dump-times vect zero step in outer loop. 1 FAIL: gcc.dg/vect/vect-outer-6.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 1 FAIL: gcc.dg/vect/vect-outer-6.c scan-tree-dump-times vect zero step in outer loop. 1 FAIL: gcc.dg/vect/vect-outer-fir-lb.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 2 FAIL: gcc.dg/vect/vect-outer-fir.c scan-tree-dump-times vect OUTER LOOP VECTORIZED 2 FAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect vectorized 1 loops 1 FAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect Vectorizing an unaligned access 1 FAIL: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect Alignment of access forced using peeling 1 FAIL: gcc.dg/vect/vect-reduc-1.c scan-tree-dump-times vect vectorized 3 loops 1 FAIL: gcc.dg/vect/vect-reduc-1char.c scan-tree-dump-times vect vectorized 3 loops 1 FAIL: gcc.dg/vect/vect-reduc-1short.c scan-tree-dump-times
[Bug bootstrap/47044] bootstrap comparison failure when -O2 defaults on -fgraphite-identity and --enable-build-with-cxx
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47044 --- Comment #2 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-23 04:14:44 UTC --- Same bootstrap comparison failure obtained with unpatched r168197 using... make -j 8 BOOT_CFLAGS=-g -O2 -fgraphite-identity with --enable-build-with-cxx on x86_64-apple-darwin10.
[Bug bootstrap/47044] bootstrap comparison failure when -O2 defaults on -fgraphite-identity and --enable-build-with-cxx
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47044 --- Comment #3 from Jack Howarth howarth at nitro dot med.uc.edu 2010-12-23 05:09:28 UTC --- Same bootstrap comparison failure can be reproduced on x86_64 Fedora10 with... ../gcc/configure --with-gmp=/usr --with-mpfr=/usr --with-mpc=/usr --prefix=/home/howarth/dist --enable-languages=c,c++ --enable-checking=yes --enable-build-with-cxx make -j 8 BOOT_CFLAGS=-g -O2 -fgraphite-identity