test(asm): lock indirect-memory =*m rejection (Phase G prep)
Adds examples/1652-platform-asm-indirect-mem.sx exercising a `=*m -> @x`
indirect-memory place output. Currently rejected loudly at lowering
("not yet implemented"); this locks that behavior as a passing test.
The next commit implements indirect-memory outputs and flips this
example to run end-to-end (store-through-pointer → 42).
This commit is contained in:
1
examples/expected/1652-platform-asm-indirect-mem.exit
Normal file
1
examples/expected/1652-platform-asm-indirect-mem.exit
Normal file
@@ -0,0 +1 @@
|
||||
1
|
||||
19
examples/expected/1652-platform-asm-indirect-mem.stderr
Normal file
19
examples/expected/1652-platform-asm-indirect-mem.stderr
Normal file
@@ -0,0 +1,19 @@
|
||||
error: indirect-memory (`*`) asm outputs are not yet implemented
|
||||
--> examples/1652-platform-asm-indirect-mem.sx:9:5
|
||||
|
|
||||
9 | asm volatile {
|
||||
| ^^^^^^^^^^^^^^
|
||||
10 | #string ASM
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
11 | mov x9, #42
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
12 | str x9, %[out]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
13 | ASM,
|
||||
| ^^^^
|
||||
14 | [out] "=*m" -> @x,
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
15 | clobbers(.x9),
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
16 | };
|
||||
| ^^^^^
|
||||
1
examples/expected/1652-platform-asm-indirect-mem.stdout
Normal file
1
examples/expected/1652-platform-asm-indirect-mem.stdout
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
Reference in New Issue
Block a user