基本的な実行方法は以下の通り

1
2
3
4
5
6
7
# コマンドで実行
$ spim -file hoge.s

# インタラクティブに実行
$ spim
(spim) load "hoge.s" # ダブルクオーテーションは必須
(spim) run

ブレイクポイント

良い例

サブルーチンpiyoにブレイクポイントを設定するときにうまく行くソースコード

1
2
3
4
5
# hoge.s
.globl piyo
piyo: addi $sp, $sp, -4
sw $ra, 0($sp)
...

だめな例

このように書くと正常に動作し、文法的に全く問題はないものの、ブレイクポイントが設定できない。

1
2
3
4
5
# hoge.s
piyo:
addi $sp, $sp, -4
sw $ra, 0($sp)
..
  • .globl piyoがない
  • ラベルと同じ行に命令を書いていない

実行方法

1
2
3
4
5
6
$ spim
(spim) load "hoge.s"
(spim) breakpoint piyo
(spim) run # ブレイクポイント前まで実行
(spim) step # 1ステップ実行
(spim) # Enterで前のコマンドを繰り返す