mnem m = string m
iLit :: Dict -> Parser Word32
-iLit (_,d) = expr d
+iLit (_,d) = do
+ val <- expr d;
+ try (do {
+ string "@hi";
+ return $ shiftR val 16
+ }) <|> do {
+ string "@lo";
+ return $ val .&. 0xffff
+ } <|> return val
+
iLit12 d = do i <- iLit d; return $ i .&. 0x0fff
iLit15 d = do i <- iLit d; return $ i .&. 0xefff