diff options
| author | Simon Peyton Jones <simonpj@microsoft.com> | 2015-01-05 16:57:01 +0000 |
|---|---|---|
| committer | Simon Peyton Jones <simonpj@microsoft.com> | 2015-01-06 14:24:59 +0000 |
| commit | 39337a6d97c853a88fa61d6b12a04eb8c2e5984f (patch) | |
| tree | 0dd7051080041ee928429832122b9dd14add302c /compiler/nativeGen/RegAlloc | |
| parent | 32973bf3c2f6fe00e01b44a63ac1904080466938 (diff) | |
| download | haskell-39337a6d97c853a88fa61d6b12a04eb8c2e5984f.tar.gz | |
Remove redundant constraints in the compiler itself, found by -fwarn-redundant-constraints
Diffstat (limited to 'compiler/nativeGen/RegAlloc')
| -rw-r--r-- | compiler/nativeGen/RegAlloc/Graph/SpillClean.hs | 11 | ||||
| -rw-r--r-- | compiler/nativeGen/RegAlloc/Linear/Main.hs | 4 |
2 files changed, 6 insertions, 9 deletions
diff --git a/compiler/nativeGen/RegAlloc/Graph/SpillClean.hs b/compiler/nativeGen/RegAlloc/Graph/SpillClean.hs index a81d76dd8d..01ab3efff1 100644 --- a/compiler/nativeGen/RegAlloc/Graph/SpillClean.hs +++ b/compiler/nativeGen/RegAlloc/Graph/SpillClean.hs @@ -543,7 +543,7 @@ addAssoc a b m -- | Delete all associations to a node. -delAssoc :: (Outputable a, Uniquable a) +delAssoc :: (Uniquable a) => a -> Assoc a -> Assoc a delAssoc a m @@ -566,7 +566,7 @@ delAssoc1 a b m -- | Check if these two things are associated. -elemAssoc :: (Outputable a, Uniquable a) +elemAssoc :: (Uniquable a) => a -> a -> Assoc a -> Bool elemAssoc a b m @@ -574,7 +574,7 @@ elemAssoc a b m -- | Find the refl. trans. closure of the association from this point. -closeAssoc :: (Outputable a, Uniquable a) +closeAssoc :: (Uniquable a) => a -> Assoc a -> UniqSet a closeAssoc a assoc @@ -604,10 +604,7 @@ closeAssoc a assoc (unionUniqSets toVisit neighbors) -- | Intersect two associations. -intersectAssoc - :: Uniquable a - => Assoc a -> Assoc a -> Assoc a - +intersectAssoc :: Assoc a -> Assoc a -> Assoc a intersectAssoc a b = intersectUFM_C (intersectUniqSets) a b diff --git a/compiler/nativeGen/RegAlloc/Linear/Main.hs b/compiler/nativeGen/RegAlloc/Linear/Main.hs index d602d60d10..434c00f9b8 100644 --- a/compiler/nativeGen/RegAlloc/Linear/Main.hs +++ b/compiler/nativeGen/RegAlloc/Linear/Main.hs @@ -606,7 +606,7 @@ releaseRegs regs = do -- saveClobberedTemps - :: (Outputable instr, Instruction instr, FR freeRegs) + :: (Instruction instr, FR freeRegs) => [RealReg] -- real registers clobbered by this instruction -> [Reg] -- registers which are no longer live after this insn -> RegM freeRegs [instr] -- return: instructions to spill any temps that will @@ -873,7 +873,7 @@ newLocation _ my_reg = InReg my_reg -- | Load up a spilled temporary if we need to (read from memory). loadTemp - :: (Outputable instr, Instruction instr) + :: (Instruction instr) => VirtualReg -- the temp being loaded -> SpillLoc -- the current location of this temp -> RealReg -- the hreg to load the temp into |
