| /* { dg-do compile } */ |
| |
| void |
| foo (void) |
| { |
| char reg = 10; |
| __asm__ ("mov.b %d1, %0\n" : "=r" (reg) : "r" (reg)); |
| /* { dg-error "invalid 'asm': %d, %e, %f, %g operand modifiers are for memory references or constant values only" "" { target *-*-* } .-1 } */ |
| __asm__ ("mov.b %e1, %0\n" : "=r" (reg) : "r" (reg)); |
| /* { dg-error "invalid 'asm': %d, %e, %f, %g operand modifiers are for memory references or constant values only" "" { target *-*-* } .-1 } */ |
| __asm__ ("mov.b %f1, %0\n" : "=r" (reg) : "r" (reg)); |
| /* { dg-error "invalid 'asm': %d, %e, %f, %g operand modifiers are for memory references or constant values only" "" { target *-*-* } .-1 } */ |
| __asm__ ("mov.b %g1, %0\n" : "=r" (reg) : "r" (reg)); |
| /* { dg-error "invalid 'asm': %d, %e, %f, %g operand modifiers are for memory references or constant values only" "" { target *-*-* } .-1 } */ |
| } |