SCM Repository
[smlnj] Diff of /sml/branches/SMLNJ/src/MLRISC/mltree/mltreegen.sml
Diff of /sml/branches/SMLNJ/src/MLRISC/mltree/mltreegen.sml
Parent Directory
|
Revision Log
|
Patch
182 |
| T.CVTI2I(ty,T.ZERO_EXTEND,e) => |
| T.CVTI2I(ty,T.ZERO_EXTEND,e) => |
183 |
let val fromTy = size e |
let val fromTy = size e |
184 |
in if fromTy <= ty then e |
in if fromTy <= ty then e |
185 |
else case fromTy of |
else case ty of (* ty < fromTy *) |
186 |
8 => T.ANDB(ty,e,T.LI32 0wxff) |
8 => T.ANDB(ty,e,T.LI32 0wxff) |
187 |
| 16 => T.ANDB(ty,e,T.LI32 0wxffff) |
| 16 => T.ANDB(ty,e,T.LI32 0wxffff) |
188 |
| 32 => T.ANDB(ty,e,T.LI32 0wxffffffff) |
| 32 => T.ANDB(ty,e,T.LI32 0wxffffffff) |
189 |
|
| 64 => e |
190 |
| _ => raise T.Unsupported("unknown expression",exp) |
| _ => raise T.Unsupported("unknown expression",exp) |
191 |
end |
end |
192 |
|
|
|
Legend:
Removed from v.468 |
|
changed lines |
|
Added in v.469 |
|
|