1. store_src_rg v0..1 = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. copy_constant globalArray[0] = 0x3F800000 (1.0) | |
4. copy_constant globalArray[1] = 0x3F800000 (1.0) | |
5. copy_constant globalArray[2] = 0x3F800000 (1.0) | |
6. copy_constant globalArray[3] = 0x3F800000 (1.0) | |
7. copy_constant globalArray[4] = 0x3F800000 (1.0) | |
8. copy_constant $0 = 0x3F800000 (1.0) | |
9. copy_slot_unmasked $1 = $0 | |
10. copy_2_slots_unmasked globalVector = $0..1 | |
11. copy_constant globalMatrix(0) = 0x3F800000 (1.0) | |
12. copy_constant globalMatrix(1) = 0x3F800000 (1.0) | |
13. copy_constant globalMatrix(2) = 0x3F800000 (1.0) | |
14. copy_constant globalMatrix(3) = 0x3F800000 (1.0) | |
15. zero_slot_unmasked localArray[0] = 0 | |
16. copy_constant localArray[1] = 0x3F800000 (1.0) | |
17. copy_constant localArray[2] = 0x40000000 (2.0) | |
18. copy_constant localArray[3] = 0x40400000 (3.0) | |
19. copy_constant localArray[4] = 0x40800000 (4.0) | |
20. copy_constant $0 = 0x3F800000 (1.0) | |
21. copy_slot_unmasked $1 = $0 | |
22. copy_2_slots_unmasked localVector = $0..1 | |
23. zero_slot_unmasked localMatrix(0) = 0 | |
24. copy_constant localMatrix(1) = 0x3F800000 (1.0) | |
25. copy_constant localMatrix(2) = 0x40000000 (2.0) | |
26. copy_constant localMatrix(3) = 0x40400000 (3.0) | |
27. copy_4_slots_unmasked $0..3 = globalArray[0], globalArray[1], globalArray[2], globalArray[3] | |
28. copy_slot_unmasked $4 = globalArray[4] | |
29. copy_4_constants $5..8 = testArray[0], testArray[1], testArray[2], testArray[3] | |
30. copy_constant $9 = testArray[4] | |
31. cmpeq_n_floats $0..4 = equal($0..4, $5..9) | |
32. bitwise_and_2_ints $1..2 &= $3..4 | |
33. bitwise_and_int $1 &= $2 | |
34. bitwise_and_int $0 &= $1 | |
35. copy_2_slots_unmasked $1..2 = globalVector | |
36. copy_2_constants $3..4 = colorRed(0..1) | |
37. cmpeq_2_floats $1..2 = equal($1..2, $3..4) | |
38. bitwise_and_int $1 &= $2 | |
39. bitwise_or_int $0 |= $1 | |
40. copy_4_slots_unmasked $1..4 = globalMatrix | |
41. copy_4_constants $5..8 = testMatrix2x2 | |
42. cmpeq_4_floats $1..4 = equal($1..4, $5..8) | |
43. bitwise_and_2_ints $1..2 &= $3..4 | |
44. bitwise_and_int $1 &= $2 | |
45. bitwise_or_int $0 |= $1 | |
46. copy_4_slots_unmasked $1..4 = localArray[0], localArray[1], localArray[2], localArray[3] | |
47. copy_slot_unmasked $5 = localArray[4] | |
48. copy_4_constants $6..9 = testArray[0], testArray[1], testArray[2], testArray[3] | |
49. copy_constant $10 = testArray[4] | |
50. cmpeq_n_floats $1..5 = equal($1..5, $6..10) | |
51. bitwise_and_2_ints $2..3 &= $4..5 | |
52. bitwise_and_int $2 &= $3 | |
53. bitwise_and_int $1 &= $2 | |
54. bitwise_or_int $0 |= $1 | |
55. copy_2_slots_unmasked $1..2 = localVector | |
56. copy_2_constants $3..4 = colorRed(0..1) | |
57. cmpeq_2_floats $1..2 = equal($1..2, $3..4) | |
58. bitwise_and_int $1 &= $2 | |
59. bitwise_or_int $0 |= $1 | |
60. copy_4_slots_unmasked $1..4 = localMatrix | |
61. copy_4_constants $5..8 = testMatrix2x2 | |
62. cmpeq_4_floats $1..4 = equal($1..4, $5..8) | |
63. bitwise_and_2_ints $1..2 &= $3..4 | |
64. bitwise_and_int $1 &= $2 | |
65. bitwise_or_int $0 |= $1 | |
66. branch_if_no_active_lanes_eq branch +4 (label 0 at #70) if no lanes of $0 == 0xFFFFFFFF | |
67. copy_4_constants $1..4 = colorRed | |
68. copy_4_slots_masked [main].result = Mask($1..4) | |
69. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
70. label label 0x00000000 | |
71. zero_slot_unmasked $0 = 0 | |
72. copy_constant $1 = 0x3F800000 (1.0) | |
73. zero_slot_unmasked $2 = 0 | |
74. copy_constant $3 = 0x3F800000 (1.0) | |
75. copy_4_slots_masked [main].result = Mask($0..3) | |
76. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
77. load_src src.rgba = [main].result |