[project @ 1999-12-20 22:21:09 by lewie]
authorlewie <unknown>
Mon, 20 Dec 1999 22:21:10 +0000 (22:21 +0000)
committerlewie <unknown>
Mon, 20 Dec 1999 22:21:10 +0000 (22:21 +0000)
Remove *uses* of unused IntAbsOp (see recent log message in prelude/PrimOp).

ghc/compiler/absCSyn/Costs.lhs
ghc/compiler/nativeGen/AsmCodeGen.lhs
ghc/compiler/nativeGen/MachCode.lhs

index b6d955c..24563c7 100644 (file)
@@ -375,7 +375,6 @@ primOpCosts IntMulOp  = Cost (3, 1, 0, 0, 0)  + umul_costs
 primOpCosts IntQuotOp = Cost (3, 1, 0, 0, 0)  + div_costs
 primOpCosts IntRemOp  = Cost (3, 1, 0, 0, 0)  + rem_costs
 primOpCosts IntNegOp  = Cost (1, 1, 0, 0, 0) -- translates into 1 sub
-primOpCosts IntAbsOp  = Cost (0, 1, 0, 0, 0) -- abs closure already costed
 
 primOpCosts FloatGtOp  = Cost (2, 0, 0, 0, 2) -- expensive f-comp
 primOpCosts FloatGeOp  = Cost (2, 0, 0, 0, 2) -- expensive f-comp
@@ -460,7 +459,7 @@ data PrimOp
     -- but these take more than that; see special cases in primOpCosts
     -- I counted the generated ass. instructions for these -> checked
     | IntMulOp | IntQuotOp
-    | IntRemOp | IntNegOp | IntAbsOp
+    | IntRemOp | IntNegOp
 
     -- Rest is unchecked so far -- HWL
 
index abfb793..1a08d46 100644 (file)
@@ -209,7 +209,6 @@ primOpt
 primOpt op arg@[StInt x]
   = case op of
        IntNegOp -> StInt (-x)
-       IntAbsOp -> StInt (abs x)
        _ -> StPrim op arg
 
 primOpt op args@[StInt x, StInt y]
index cbfe9dc..14c2b8a 100644 (file)
@@ -298,7 +298,6 @@ getRegister (StDouble d)
 getRegister (StPrim primop [x]) -- unary PrimOps
   = case primop of
       IntNegOp -> trivialUCode (NEG Q False) x
-      IntAbsOp -> trivialUCode (ABS Q) x
 
       NotOp    -> trivialUCode NOT x
 
@@ -536,7 +535,6 @@ getRegister (StDouble d)
 getRegister (StPrim primop [x]) -- unary PrimOps
   = case primop of
       IntNegOp  -> trivialUCode (NEGI L) x
-      IntAbsOp  -> absIntCode x
 
       NotOp    -> trivialUCode (NOT L) x