/* This would cause PRE load motion to generate invalid code and ICE */
void foo (char *name)
{
if (*name)
name ++;
while (name[0]);
asm ("" : "=r" (name));
}