summaryrefslogtreecommitdiff
path: root/reference/xonotic/xonotic21.asm
blob: ca2a36c8af1bd30140f469f96f0c7cd29dea9b60 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
; options:
; FRAG: new compiler
@in(r0.x)	in0
@in(r0.y)	in1
@out(r1.x)	out0
@out(r1.y)	out1
@out(r1.z)	out2
@out(r1.w)	out3
@const(c0.x)	0x40800000, 0x3f800000, 0x00000000, 0x00000000
(sy)(ss)bary.f r0.z, 4, r0.x
bary.f r0.w, 5, r0.x
bary.f r1.x, 7, r0.x
bary.f r1.y, 8, r0.x
bary.f r1.z, 9, r0.x
bary.f r1.w, 11, r0.x
bary.f r2.x, 3, r0.x
bary.f r2.y, 2, r0.x
bary.f r2.z, 1, r0.x
sam.p (f32)(xyzw)r2.w, r0.z, s#1, t#1
bary.f (ei)r0.x, 0, r0.x
nop
(sy)mul.f r0.y, r3.y, r2.y
(ss)nop
sam.p (f32)(xyzw)r0.z, r1.y, s#0, t#0
(ss)mul.f r1.z, r3.x, r2.z
mul.f r0.x, r2.w, r0.x
(sy)mul.f r1.y, r1.y, r2.x
mul.f r0.y, r1.x, r0.y
mul.f r0.w, r0.w, r1.z
mul.f r0.x, r0.z, r0.x
mul.f r0.z, r1.y, c0.y
mul.f r0.y, r0.y, c0.x
mul.f r0.w, r0.w, c0.x
mul.f r0.x, r0.x, c0.x
max.f r0.z, r0.z, c0.z
max.f r0.y, r0.y, c0.z
max.f r0.w, r0.w, c0.z
max.f r0.x, r0.x, c0.z
min.f r1.w, r0.z, c0.y
min.f r1.z, r0.y, c0.y
min.f r1.y, r0.w, c0.y
min.f r1.x, r0.x, c0.y
end
nop
nop
; FRAG: outputs: r1.x (1:0)
; FRAG: inputs: r1.y (1:0,cm=f,il=8,b=1) r0.y (5:0,cm=f,il=12,b=1) r1.x (5:1,cm=f,il=16,b=1)
; FRAG: 34 instructions, 0 half, 4 full