mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
31 lines
1001 B
Plaintext
31 lines
1001 B
Plaintext
// #target: macos-x64
|
|
module test;
|
|
|
|
fn void main(String[] args)
|
|
{
|
|
int foo;
|
|
asm
|
|
{
|
|
adcxl $eax, $ecx;
|
|
adcxq $rax, $rcx;
|
|
addpd $xmm1, $xmm2;
|
|
addps $xmm1, $xmm2;
|
|
addsd $xmm1, $xmm2;
|
|
addss $xmm1, $xmm2;
|
|
vaddpd $xmm1, $xmm2, $xmm3;
|
|
vaddpd $ymm1, $ymm2, $ymm3;
|
|
vaddpd $xmm1, $xmm2, [&foo];
|
|
vaddps $xmm1, $xmm2, $xmm3;
|
|
vaddps $ymm1, $ymm2, $ymm3;
|
|
vaddps $xmm1, $xmm2, [&foo];
|
|
vaddsd $xmm1, $xmm2, $xmm3;
|
|
vaddsd $xmm1, $xmm2, [&foo];
|
|
vaddss $xmm1, $xmm2, $xmm3;
|
|
vaddss $xmm1, $xmm2, [&foo];
|
|
}
|
|
}
|
|
|
|
/* #expect: test.ll
|
|
|
|
"adcxl %ecx, %eax\0Aadcxq %rcx, %rax\0Aaddpd %xmm2, %xmm1\0Aaddps %xmm2, %xmm1\0Aaddsd %xmm2, %xmm1\0Aaddss %xmm2, %xmm1\0Avaddpd %xmm3, %xmm2, %xmm1\0Avaddpd %ymm3, %ymm2, %ymm1\0Avaddpd $0, %xmm2, %xmm1\0Avaddps %xmm3, %xmm2, %xmm1\0Avaddps %ymm3, %ymm2, %ymm1\0Avaddps $0, %xmm2, %xmm1\0Avaddsd %xmm3, %xmm2, %xmm1\0Avaddsd $0, %xmm2, %xmm1\0Avaddss %xmm3, %xmm2, %xmm1\0Avaddss $0, %xmm2, %xmm1\0A", "*m,~{cc},~{rcx},~{xmm1},~{flags},~{dirflag},~{fspr}"
|