1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. copy_constant $0 = 0xFFFFFFFF | |
4. copy_slot_unmasked _2_ok = $0 | |
5. copy_4_constants $1..4 = colorGreen | |
6. copy_4_constants $5..8 = colorRed | |
7. cmpne_4_floats $1..4 = notEqual($1..4, $5..8) | |
8. bitwise_or_2_ints $1..2 |= $3..4 | |
9. bitwise_or_int $1 |= $2 | |
10. bitwise_and_int $0 &= $1 | |
11. copy_slot_masked _2_ok = Mask($0) | |
12. store_condition_mask $9 = CondMask | |
13. copy_slot_unmasked $10 = _2_ok | |
14. copy_4_constants $0..3 = colorRed | |
15. merge_condition_mask CondMask = $9 & $10 | |
16. copy_4_constants $4..7 = colorGreen | |
17. copy_4_slots_masked $0..3 = Mask($4..7) | |
18. load_condition_mask CondMask = $9 | |
19. copy_4_slots_masked [main].result = Mask($0..3) | |
20. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
21. load_src src.rgba = [main].result |