QIf.ssa 614 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. # QBE IR generated by the SimpleQ backend
  2. data $x = { w 0 }
  3. data $ExitCode = { w 0 }
  4. export function w $main() {
  5. @start
  6. %t0 =w loadw $x
  7. storew 2, $x
  8. %t1 =w loadw $x
  9. %t2 =w ceqw %t1, 1
  10. jnz %t2, @L0, @L1
  11. @L0
  12. %t3 =w loadw $ExitCode
  13. storew 10, $ExitCode
  14. jmp @L2
  15. @L1
  16. %t4 =w loadw $x
  17. %t5 =w ceqw %t4, 2
  18. jnz %t5, @L3, @L4
  19. @L3
  20. %t6 =w loadw $ExitCode
  21. storew 20, $ExitCode
  22. jmp @L2
  23. @L4
  24. %t7 =w loadw $ExitCode
  25. storew 30, $ExitCode
  26. @L2
  27. %t8 =w loadw $x
  28. %t9 =w cnew %t8, 2
  29. jnz %t9, @L5, @L6
  30. @L5
  31. %t10 =w loadw $ExitCode
  32. storew 99, $ExitCode
  33. @L6
  34. @L7
  35. %ec =w loadw $ExitCode
  36. ret %ec
  37. }