--- Comment #6 from patchapp at dberlin dot org 2006-10-11 13:31 ---
Subject: Bug number PR29119
A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2006-10/msg00612.html
--
http://gcc.gnu.org/bugzilla/sh
--- Comment #5 from rguenth at gcc dot gnu dot org 2006-10-11 11:55 ---
Gimplification marks the TARGET_EXPR addressable in
{
__asm__ __volatile__(""::"m" TARGET_EXPR );
}
while it should mark the gimplified lvalue addressable.
--
rguenth at gcc dot gnu dot org changed:
--
mmitchel at gcc dot gnu dot org changed:
What|Removed |Added
Priority|P3 |P2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29119
--- Comment #4 from rguenth at gcc dot gnu dot org 2006-09-18 10:07 ---
I say this should be made invalid. In fact we already warn about it to become
invalid:
./cc1 -quiet t.c
t.c: In function 'ldt_add_entry':
t.c:3: warning: use of memory input without lvalue in asm operand 0 is
depre
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-09-17 22:01 ---
We must had forgot to mark the variable as ADDRESSABLE.
Also this used to work with the C++ front-end in 4.1.x but now does not in
4.2.0.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29119
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-09-17 21:57 ---
Reduced testcase:
void ldt_add_entry(void)
{
__asm__ ("" :: "m"(({unsigned __v; __v;})));
}
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
--