v2 / vlib / v / slow_tests / assembly / asm_test.s390x.v
32 lines · 30 sloc · 366 bytes · 4872e3cff070117a7a67d44e78280818485082dd
Raw
1// vtest build: gcc
2fn test_inline_asm() {
3 a, mut b := 10, 0
4 asm s390x {
5 lgr r2, a
6 lgr b, r2
7 ; +r (b)
8 ; r (a)
9 ; r2
10 }
11 assert a == b
12
13 mut c := 0
14 asm s390x {
15 lgfi c, 5
16 ; +r (c)
17 }
18 assert c == 5
19
20 d, e, mut f := 10, 2, 0
21 asm s390x {
22 lgr f, d
23 ar f, e
24 ahi f, 5
25 ; +r (f)
26 ; r (d)
27 r (e)
28 }
29 assert d == 10
30 assert e == 2
31 assert f == 17
32}
33