From 4e6938e0aef4e1e89708c1f0d5a0e88ab607f92f Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Sun, 7 Oct 2007 15:09:36 +0000 Subject: [PATCH] Fixed AnalyseAsm so that it can parse negative literals in the assembly code --- backends/AnalyseAsm.hs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backends/AnalyseAsm.hs b/backends/AnalyseAsm.hs index 0c0205c..f500e2a 100644 --- a/backends/AnalyseAsm.hs +++ b/backends/AnalyseAsm.hs @@ -78,6 +78,11 @@ parseAsmLine s incdecRE = mkRegex "^subl (.*), %esp$" parseVal :: String -> Int + -- The numbers can be negative: + parseVal ('$':'-':s) + = case readDec s of + [(v, "")] -> -v + _ -> error $ "Don't know how to parse assembly literal: -" ++ s parseVal ('$':s) = case readDec s of [(v, "")] -> v