QLoop.ssa 432 B

1234567891011121314151617181920212223242526272829
  1. # QBE IR generated by the SimpleQ backend
  2. data $i = { w 0 }
  3. data $ExitCode = { w 0 }
  4. export function w $main() {
  5. @start
  6. %t0 =w loadw $i
  7. storew 0, $i
  8. @L0
  9. %t1 =w loadw $i
  10. %t2 =w loadw $i
  11. %t3 =w add %t2, 1
  12. storew %t3, $i
  13. %t4 =w loadw $i
  14. %t5 =w csgew %t4, 7
  15. jnz %t5, @L2, @L3
  16. @L2
  17. jmp @L1
  18. @L3
  19. @L4
  20. jmp @L0
  21. @L1
  22. %t6 =w loadw $ExitCode
  23. %t7 =w loadw $i
  24. storew %t7, $ExitCode
  25. %ec =w loadw $ExitCode
  26. ret %ec
  27. }