[Bug target/40067] use brz instead of cmp/be with 32-bit values
--- Comment #4 from ebotcazou at gcc dot gnu dot org 2009-05-08 15:06 --- > I think this affects 32-bit sparc as well, unless the br* instructions are new > in sparcv9 (they don't seem to be). Yes, they are new in V9 and operate only on the full 64-bit register. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40067
[Bug target/40067] use brz instead of cmp/be with 32-bit values
--- Comment #3 from scovich at gmail dot com 2009-05-08 11:30 --- > What|Removed |Added > > GCC target triplet|sparc-sun-solaris2.10 |sparc64-sun-solaris2.10 I think this affects 32-bit sparc as well, unless the br* instructions are new in sparcv9 (they don't seem to be). The only difference with v9 seems to be that 32-bit code needs to use ldsw to sign-extend if needed. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40067
[Bug target/40067] use brz instead of cmp/be with 32-bit values
--- Comment #2 from ebotcazou at gcc dot gnu dot org 2009-05-08 10:17 --- brz is not used because *ptr is an int, it would be used with a long. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added Severity|normal |enhancement Status|UNCONFIRMED |NEW Component|middle-end |target Ever Confirmed|0 |1 GCC target triplet|sparc-sun-solaris2.10 |sparc64-sun-solaris2.10 Last reconfirmed|-00-00 00:00:00 |2009-05-08 10:17:51 date|| Summary|gcc should use brz(brnz)|use brz instead of cmp/be |instead of cmp/be(bne) when |with 32-bit values |possible| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40067