------- Comment #7 from pinskia at gcc dot gnu dot org 2006-04-07 16:00 -------
grrrr, well this is why reusing the operand is not a good idea anyways this is
a regression from when the builtins came in which was 4.1.0.
Well confirmed, a simple testcase is:
int f(int *a, int b)
{
return __sync_fetch_and_add(a, b);
}
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |aldyh at gcc dot gnu dot org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
GCC host triplet|x86_64-unknown-linux-gnu |
GCC target triplet|powerpc-unknown-linux-gnuspe|powerpc-*-linux-gnuspe
Last reconfirmed|0000-00-00 00:00:00 |2006-04-07 16:00:50
date| |
Summary|Compiler generate incorrect |[4.1 Regression] Compiler
|assembler |generate incorrect assembler
| |for __sync_fetch-* builtins
| |on e500 aka SPE
Target Milestone|--- |4.1.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27075