- fun sfx Byte = "b"
- | sfx Word = "w"
- | sfx Long = "l"
- | sfx Quad = "q"
-
- fun name (t,s, sz) = "+t" ^ Int.toString t ^ "[" ^ s ^ "]" ^ sfx sz
- fun size (t, s, sz) = sz
- fun compare ((t1,_,_),(t2,_,_)) = Int.compare (t1,t2)
-
- fun eq ((t1,_,_), (t2,_,_)) = t1 = t2
-
- fun cmpsize (Quad,Quad) = EQUAL
- | cmpsize (Quad,_) = GREATER
- | cmpsize (_,Quad) = LESS
- | cmpsize (Long,Long) = EQUAL
- | cmpsize (Long,_) = GREATER
- | cmpsize (_,Long) = LESS
- | cmpsize (Word,Word) = EQUAL
- | cmpsize (Word,_) = GREATER
- | cmpsize (_,Word) = LESS
- | cmpsize (Byte,Byte) = EQUAL
-
- fun sts 8 = Quad
- | sts 4 = Long
- | sts 2 = Word
- | sts 1 = Byte
- | sts _ = raise ErrorMsg.InternalError "Temp.sts: invalid size"
+ fun name (t,s) = "+t" ^ Int.toString t ^ "[" ^ s ^ "]"
+ fun compare ((t1,_),(t2,_)) = Int.compare (t1,t2)