1. store_src_rg v0..1 = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. zero_slot_unmasked kConstant = 0 | |
4. copy_constant kOtherConstant = 0x00000001 (1.401298e-45) | |
5. copy_constant kAnotherConstant = 0x00000002 (2.802597e-45) | |
6. copy_constant kFloatConstant = 0x4008F5C3 (2.14) | |
7. copy_slot_unmasked $0 = kFloatConstant | |
8. copy_slot_unmasked kFloatConstantAlias = $0 | |
9. copy_constant kConstVec(0) = 0x3F800000 (1.0) | |
10. copy_constant kConstVec(1) = 0x3E4CCCCD (0.2) | |
11. copy_constant kConstVec(2) = 0x4008F5C3 (2.14) | |
12. copy_constant kConstVec(3) = 0x3F800000 (1.0) | |
13. copy_constant kLocalFloatConstant = 0x4048F5C3 (3.14) | |
14. copy_slot_unmasked $0 = kLocalFloatConstant | |
15. copy_slot_unmasked kLocalFloatConstantAlias = $0 | |
16. copy_constant $0 = colorGreen(1) | |
17. cast_to_int_from_float $0 = FloatToInt($0) | |
18. copy_slot_unmasked integerInput = $0 | |
19. store_condition_mask $0 = CondMask | |
20. copy_slot_unmasked $1 = integerInput | |
21. copy_slot_unmasked $2 = kConstant | |
22. cmpeq_int $1 = equal($1, $2) | |
23. merge_condition_mask CondMask = $0 & $1 | |
24. copy_constant $2 = 0x4008F5C3 (2.14) | |
25. swizzle_4 $2..5 = ($2..5).xxxx | |
26. copy_4_slots_masked [main].result = Mask($2..5) | |
27. bitwise_not_int $1 = ~$1 | |
28. merge_condition_mask CondMask = $0 & $1 | |
29. store_condition_mask $2 = CondMask | |
30. copy_slot_unmasked $3 = integerInput | |
31. copy_slot_unmasked $4 = kOtherConstant | |
32. cmpeq_int $3 = equal($3, $4) | |
33. merge_condition_mask CondMask = $2 & $3 | |
34. copy_4_constants $4..7 = colorGreen | |
35. copy_4_slots_masked [main].result = Mask($4..7) | |
36. bitwise_not_int $3 = ~$3 | |
37. merge_condition_mask CondMask = $2 & $3 | |
38. store_condition_mask $4 = CondMask | |
39. copy_slot_unmasked $5 = integerInput | |
40. copy_slot_unmasked $6 = kAnotherConstant | |
41. cmpeq_int $5 = equal($5, $6) | |
42. merge_condition_mask CondMask = $4 & $5 | |
43. copy_4_slots_unmasked $6..9 = kConstVec | |
44. copy_4_slots_masked [main].result = Mask($6..9) | |
45. bitwise_not_int $5 = ~$5 | |
46. merge_condition_mask CondMask = $4 & $5 | |
47. copy_slot_unmasked $6 = kLocalFloatConstantAlias | |
48. copy_constant $7 = colorGreen(0) | |
49. copy_slot_unmasked $8 = kLocalFloatConstant | |
50. mul_float $7 *= $8 | |
51. cmplt_float $6 = lessThan($6, $7) | |
52. branch_if_no_active_lanes_eq branch +5 (#57) if no lanes of $6 == 0xFFFFFFFF | |
53. copy_constant $7 = 0x4048F5C3 (3.14) | |
54. swizzle_4 $7..10 = ($7..10).xxxx | |
55. copy_4_slots_masked [main].result = Mask($7..10) | |
56. jump jump +14 (#70) | |
57. copy_constant $7 = colorGreen(0) | |
58. copy_slot_unmasked $8 = kFloatConstantAlias | |
59. mul_float $7 *= $8 | |
60. copy_slot_unmasked $8 = kFloatConstantAlias | |
61. cmple_float $7 = lessThanEqual($7, $8) | |
62. branch_if_no_active_lanes_eq branch +4 (#66) if no lanes of $7 == 0xFFFFFFFF | |
63. zero_4_slots_unmasked $8..11 = 0 | |
64. copy_4_slots_masked [main].result = Mask($8..11) | |
65. jump jump +5 (#70) | |
66. copy_constant $8 = 0x3F800000 (1.0) | |
67. zero_2_slots_unmasked $9..10 = 0 | |
68. copy_constant $11 = 0x3F800000 (1.0) | |
69. copy_4_slots_masked [main].result = Mask($8..11) | |
70. load_condition_mask CondMask = $4 | |
71. load_condition_mask CondMask = $2 | |
72. load_condition_mask CondMask = $0 | |
73. load_src src.rgba = [main].result |