v2 / vlib / v / slow_tests / assembly / asm_empty_statement_test.v
104 lines · 75 sloc · 922 bytes · cd0451a7b77676c1be9cd9afe5d4405255b5921a
Raw
1// vtest build: !msvc
2
3fn test_empty_inline_block() {
4 // must compile
5 asm amd64 {
6 ; ; ; memory
7 }
8
9 asm volatile amd64 {
10 ; ; ; memory
11 }
12
13 asm amd64 {
14 }
15
16 asm volatile amd64 {
17 }
18
19 asm arm64 {
20 ; ; ; memory
21 }
22
23 asm volatile arm64 {
24 ; ; ; memory
25 }
26
27 asm arm64 {
28 }
29
30 asm volatile arm64 {
31 }
32
33 asm i386 {
34 ; ; ; memory
35 }
36
37 asm volatile i386 {
38 ; ; ; memory
39 }
40
41 asm i386 {
42 }
43
44 asm volatile i386 {
45 }
46
47 asm rv64 {
48 ; ; ; memory
49 }
50
51 asm volatile rv64 {
52 ; ; ; memory
53 }
54
55 asm rv64 {
56 }
57
58 asm volatile rv64 {
59 }
60
61 asm loongarch64 {
62 ; ; ; memory
63 }
64
65 asm volatile loongarch64 {
66 ; ; ; memory
67 }
68
69 asm loongarch64 {
70 }
71
72 asm volatile loongarch64 {
73 }
74
75 asm ppc64le {
76 ; ; ; memory
77 }
78
79 asm volatile ppc64le {
80 ; ; ; memory
81 }
82
83 asm ppc64le {
84 }
85
86 asm volatile ppc64le {
87 }
88
89 asm s390x {
90 ; ; ; memory
91 }
92
93 asm volatile s390x {
94 ; ; ; memory
95 }
96
97 asm s390x {
98 }
99
100 asm volatile s390x {
101 }
102
103 assert true
104}
105