Details
Details
Diff Detail
Diff Detail
Unit Tests
Unit Tests
Event Timeline
| llvm/lib/Target/AVR/AVRAsmPrinter.cpp | ||
|---|---|---|
| 132 | It would be better to return true and the upper llvm assembler handle the error. For example, with the following c code void fooa(void);
int foob(void) {
int result;
fooa();
__asm (";; %C0" : "=d" (result));
fooa();
return result;
}Built it with clang, the clang will give detailed errors. benshi@BJSW-T026:~/llvm-project/build$ ./bin/clang a.c -O3 -Wall --target=avr -mmcu=atmega328 -S
a.c:6:9: error: invalid operand in inline asm: ';; ${0:C}'
__asm (";; %C0" : "=d" (result));
^
1 error generated. | |
It would be better to return true and the upper llvm assembler handle the error.
For example, with the following c code
void fooa(void); int foob(void) { int result; fooa(); __asm (";; %C0" : "=d" (result)); fooa(); return result; }Built it with clang, the clang will give detailed errors.
benshi@BJSW-T026:~/llvm-project/build$ ./bin/clang a.c -O3 -Wall --target=avr -mmcu=atmega328 -S a.c:6:9: error: invalid operand in inline asm: ';; ${0:C}' __asm (";; %C0" : "=d" (result)); ^ 1 error generated.