209 |
| I.Displace{base,disp,mem,...} => |
| I.Displace{base,disp,mem,...} => |
210 |
(emit_disp disp; emit "("; emit_GP base; emit ")"; |
(emit_disp disp; emit "("; emit_GP base; emit ")"; |
211 |
emit_region mem) |
emit_region mem) |
212 |
| I.Indexed{base=NONE,index,scale,disp,mem,...} => |
| I.Indexed{base,index,scale,disp,mem,...} => |
213 |
(emit_disp disp; emit "("; emit_GP index; comma(); |
(emit_disp disp; emit "("; |
214 |
|
case base of |
215 |
|
NONE => () |
216 |
|
| SOME base => emit_GP base; |
217 |
|
comma(); |
218 |
|
emit_GP index; comma(); |
219 |
emitScale scale; emit ")"; emit_region mem) |
emitScale scale; emit ")"; emit_region mem) |
|
| I.Indexed{base=SOME base,index,scale,disp,mem,...} => |
|
|
(emit_disp disp; emit "("; emit_GP base; |
|
|
comma(); emit_GP index; comma(); emitScale scale; emit ")"; |
|
|
emit_region mem) |
|
220 |
|
|
221 |
and emit_disp(I.Immed 0) = () |
and emit_disp(I.Immed 0) = () |
222 |
| emit_disp(I.Immed i) = emitInt32 i |
| emit_disp(I.Immed i) = emitInt32 i |