* replace gcc asm with __asm__ and add a test * update test case to specify gcc or clang and not cpp Co-authored-by: daniel <danielclarke@wearepopgun.com>
This commit is contained in:
parent
af140966ea
commit
489f6ddfef
2 changed files with 16 additions and 1 deletions
|
|
@ -86,7 +86,7 @@ compiler gcc:
|
||||||
linkLibCmd: " -l$1",
|
linkLibCmd: " -l$1",
|
||||||
debug: "",
|
debug: "",
|
||||||
pic: "-fPIC",
|
pic: "-fPIC",
|
||||||
asmStmtFrmt: "asm($1);$n",
|
asmStmtFrmt: "__asm__($1);$n",
|
||||||
structStmtFmt: "$1 $3 $2 ", # struct|union [packed] $name
|
structStmtFmt: "$1 $3 $2 ", # struct|union [packed] $name
|
||||||
produceAsm: gnuAsmListing,
|
produceAsm: gnuAsmListing,
|
||||||
cppXsupport: "-std=gnu++14 -funsigned-char",
|
cppXsupport: "-std=gnu++14 -funsigned-char",
|
||||||
|
|
|
||||||
15
tests/compiler/tasm.nim
Normal file
15
tests/compiler/tasm.nim
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
proc testAsm() =
|
||||||
|
let src = 41
|
||||||
|
var dst = 0
|
||||||
|
|
||||||
|
asm """
|
||||||
|
mov %1, %0\n\t
|
||||||
|
add $1, %0
|
||||||
|
: "=r" (`dst`)
|
||||||
|
: "r" (`src`)"""
|
||||||
|
|
||||||
|
doAssert dst == 42
|
||||||
|
|
||||||
|
when defined(gcc) or defined(clang) and not defined(cpp):
|
||||||
|
{.passc: "-std=c99".}
|
||||||
|
testAsm()
|
||||||
Loading…
Add table
Add a link
Reference in a new issue