blob: f2e9a750719c39fb1ba769124ef5c5add2b6c7a8 [file] [log] [blame]
1. store_src_rg coords = src.rg
2. init_lane_masks CondMask = LoopMask = RetMask = true
3. copy_constant $0 = colorGreen(0)
4. cast_to_int_from_float $0 = FloatToInt($0)
5. copy_slot_unmasked zero = $0
6. copy_constant $0 = colorGreen(1)
7. cast_to_int_from_float $0 = FloatToInt($0)
8. copy_slot_unmasked one = $0
9. copy_slot_unmasked $0 = zero
10. copy_slot_unmasked x = $0
11. store_loop_mask $0 = LoopMask
12. jump jump +66 (#78)
13. zero_slot_unmasked [for-loop continue mask 0] = 0
14. copy_slot_unmasked $1 = one
15. copy_slot_unmasked y = $1
16. store_loop_mask $1 = LoopMask
17. jump jump +49 (#66)
18. zero_slot_unmasked [for-loop continue mask 1] = 0
19. copy_slot_unmasked $2 = x
20. copy_slot_unmasked _0_x = $2
21. zero_slot_unmasked _1_result = 0
22. store_loop_mask $2 = LoopMask
23. jump jump +11 (#34)
24. zero_slot_unmasked [for-loop continue mask 2] = 0
25. copy_slot_unmasked $3 = _1_result
26. copy_constant $4 = 0x00000001 (1.401298e-45)
27. add_int $3 += $4
28. copy_slot_masked _1_result = Mask($3)
29. copy_slot_unmasked $3 = _0_x
30. copy_slot_unmasked $4 = y
31. sub_int $3 -= $4
32. copy_slot_masked _0_x = Mask($3)
33. reenable_loop_mask LoopMask |= [for-loop continue mask 2]
34. copy_slot_unmasked $3 = y
35. copy_slot_unmasked $4 = _0_x
36. cmple_int $3 = lessThanEqual($3, $4)
37. merge_loop_mask LoopMask &= $3
38. stack_rewind
39. branch_if_any_active_lanes branch_if_any_active_lanes -15 (#24)
40. load_loop_mask LoopMask = $2
41. store_condition_mask $2 = CondMask
42. copy_slot_unmasked $3 = x
43. copy_slot_unmasked $4 = y
44. div_int $3 /= $4
45. copy_slot_unmasked $4 = _1_result
46. cmpne_int $3 = notEqual($3, $4)
47. merge_condition_mask CondMask = $2 & $3
48. copy_constant $4 = 0x3F800000 (1.0)
49. copy_slot_unmasked $5 = x
50. cast_to_float_from_int $5 = IntToFloat($5)
51. copy_constant $6 = 0x437F0000 (255.0)
52. div_float $5 /= $6
53. copy_slot_unmasked $6 = y
54. cast_to_float_from_int $6 = IntToFloat($6)
55. copy_constant $7 = 0x437F0000 (255.0)
56. div_float $6 /= $7
57. copy_constant $7 = 0x3F800000 (1.0)
58. copy_4_slots_masked [main].result = Mask($4..7)
59. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
60. load_condition_mask CondMask = $2
61. reenable_loop_mask LoopMask |= [for-loop continue mask 1]
62. copy_slot_unmasked $2 = y
63. copy_constant $3 = 0x00000001 (1.401298e-45)
64. add_int $2 += $3
65. copy_slot_masked y = Mask($2)
66. copy_slot_unmasked $2 = y
67. copy_constant $3 = 0x00000064 (1.401298e-43)
68. cmplt_int $2 = lessThan($2, $3)
69. merge_loop_mask LoopMask &= $2
70. stack_rewind
71. branch_if_any_active_lanes branch_if_any_active_lanes -53 (#18)
72. load_loop_mask LoopMask = $1
73. reenable_loop_mask LoopMask |= [for-loop continue mask 0]
74. copy_slot_unmasked $1 = x
75. copy_constant $2 = 0x00000001 (1.401298e-45)
76. add_int $1 += $2
77. copy_slot_masked x = Mask($1)
78. copy_slot_unmasked $1 = x
79. copy_constant $2 = 0x00000064 (1.401298e-43)
80. cmplt_int $1 = lessThan($1, $2)
81. merge_loop_mask LoopMask &= $1
82. stack_rewind
83. branch_if_any_active_lanes branch_if_any_active_lanes -70 (#13)
84. load_loop_mask LoopMask = $0
85. copy_4_constants $0..3 = colorGreen
86. copy_4_slots_masked [main].result = Mask($0..3)
87. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
88. load_src src.rgba = [main].result