diff options
Diffstat (limited to 'reference/0ad-alpine-valley/0ad-130.asm')
-rw-r--r-- | reference/0ad-alpine-valley/0ad-130.asm | 48 |
1 files changed, 19 insertions, 29 deletions
diff --git a/reference/0ad-alpine-valley/0ad-130.asm b/reference/0ad-alpine-valley/0ad-130.asm index 3be9d09..85a697c 100644 --- a/reference/0ad-alpine-valley/0ad-130.asm +++ b/reference/0ad-alpine-valley/0ad-130.asm @@ -6,44 +6,34 @@ @out(r2.y) out1 @out(r2.z) out2 @out(r2.w) out3 +@const(c4.x) 0x3f000000, 0x00000000, 0x3f800000, 0x3fb8aa65 +@const(c5.x) 0x00000000, 0x3f800000, 0x43000000, 0x00000000 (sy)(ss)add.f r0.x, r0.w, c4.y -mov.f32f32 r0.y, c0.w -absneg.f r0.w, (neg)c2.x +absneg.f r0.y, (neg)c2.x +mov.f32f32 r2.w, c0.w add.f r0.z, r0.z, c4.y (rpt2)nop rcp r0.x, r0.x (ss)mul.f r0.x, r0.z, r0.x -mov.f32f32 r2.w, r0.y -mul.f r0.y, r0.w, c2.x -nop -mov.f32f32 r0.x, r0.x +mul.f r0.y, r0.y, c2.x (rpt2)nop mul.f r0.y, r0.y, r0.x -(rpt2)nop -mov.f32f32 r0.y, r0.y +mov.f32f32 r0.x, r0.x (rpt2)nop mul.f r0.x, r0.y, r0.x (rpt2)nop -mov.f32f32 r0.x, r0.x -(rpt2)nop mul.f r0.x, r0.x, c4.w -(rpt2)nop -mov.f32f32 r0.x, r0.x (rpt5)nop exp2 r0.x, r0.x -(ss)mov.f32f32 r0.x, r0.x -(rpt2)nop -add.f r0.y, c5.y, (neg)r0.x -mul.f r0.x, r0.x, c4.z +(ss)mov.f32f32 r0.y, r0.x +(ss)mul.f r0.x, r0.x, c4.z (rpt1)nop +add.f r0.y, c5.y, (neg)r0.y +(rpt2)nop mul.f r0.y, r0.y, c2.y (rpt2)nop add.f r0.x, r0.x, r0.y (rpt2)nop -mov.f32f32 r0.x, r0.x -(rpt2)nop -mov.f32f32 r0.x, r0.x -(rpt2)nop max.f r0.x, r0.x, c4.y (rpt2)nop min.f r0.x, r0.x, c4.z @@ -55,18 +45,18 @@ mul.f r1.x, r0.x, c0.z mul.f r0.y, r0.y, c1.z mul.f r0.z, r0.z, c1.y mul.f r0.w, r0.w, c1.x -mul.f r1.y, r0.x, c0.y -add.f r0.y, r1.x, r0.y +nop +add.f r2.z, r1.x, r0.y +mul.f r0.y, r0.x, c0.y mul.f r0.x, r0.x, c0.x (rpt1)nop -mov.f32f32 r2.z, r0.y -add.f r0.y, r1.y, r0.z -add.f r0.x, r0.x, r0.w -(rpt1)nop -mov.f32f32 r2.y, r0.y -mov.f32f32 r2.x, r0.x +add.f r2.y, r0.y, r0.z +add.f r2.x, r0.x, r0.w end +nop +nop +nop ; FRAG: outputs: r2.x (1:0) ; FRAG: inputs: r0.x (0:0,cm=f,il=8,b=0) -; FRAG: 96 instructions, 0 half, 3 full +; FRAG: 70 instructions, 0 half, 3 full |