This test uses an immediate constant, which was previously broken in inline assembly, prior to LLVM r276859.
Details
Diff Detail
Event Timeline
I'll just echo @compnerd comments, since Phab didn't get it.
- Change the syntax to asm, to be more portable
- Add Microsoft asm block syntax
cheers,
--renato
test/CodeGen/arm-inline-asm-windows.c | ||
---|---|---|
2 | Also, I just noticed, this outputs the binary to stdout. Maybe better -o /dev/null or whatever is the practice on Windows that also work on Linux. :) |
Is r276859 fixing a bug in the assembler?
I'm trying to understand why we have to add a clang test in this particular case because I don't think we normally add a test in clang every time we fix a bug in the backend or assembler.
Sort of. It was just adding a comment character to ; instead of #.
I'm trying to understand why we have to add a clang test in this particular case because I don't think we normally add a test in clang every time we fix a bug in the backend or assembler.
As I read it, this is just making sure "inline asm" works on Windows, which apparently hasn't been working so far. In a way, unrelated to the commit in question.
I agree we shouldn't be adding clang tests to assembler bugs.
MSVC doesn't support inline assembly on ARM at all (they only support that on 32 bit x86), so there's none of their syntax to support or test.
No, inline assembly has been working, but only for assembly that didn't contain any immediate values.
I agree we shouldn't be adding clang tests to assembler bugs.
Ok, we can skip this test if you prefer - the assembler test added for llvm-mc should be fine and enough as well.
Also, I just noticed, this outputs the binary to stdout. Maybe better
or whatever is the practice on Windows that also work on Linux. :)