|
|
1.1 ! root 1: .file "rover.s" ! 2: ! 3: .globl ckadd ! 4: .globl cksub ! 5: .globl ckmul ! 6: ! 7: .text ! 8: .align 1 ! 9: ckadd: save &0 ! 10: addw3 4(%ap),0(%ap),%r0 # Perform addition ! 11: jvs oflow # Branch if overflow ! 12: ret &0 # Return result in r0 ! 13: ! 14: .align 4 ! 15: cksub: save &0 ! 16: subw3 4(%ap),0(%ap),%r0 # Perform subtraction ! 17: jvs oflow # Branch if overflow ! 18: ret &0 # Return result in r0 ! 19: ! 20: .align 4 ! 21: ckmul: save &0 ! 22: mulw3 4(%ap),0(%ap),%r0 # Perform multiplication ! 23: jvs oflow # Branch if overflow ! 24: ret &0 # Return result in r0 ! 25: ! 26: oflow: # Got overflow on an operation ! 27: pushw &203 ! 28: pushw &0 ! 29: call &2,runerr # runerr(203,0)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.