Utilities, BasicBlock into src folder, BasicBlock sketching
[mate.git] / src / BasicBlocks.hs
1 {-# LANGUAGE OverloadedStrings #-}
2 module BasicBlocks where
3
4 import Data.Binary
5 import System.Environment
6 import qualified Data.Map as M
7 import qualified Data.ByteString.Lazy as B
8
9 import JVM.Common
10 import JVM.ClassFile
11 import JVM.Converter
12 import JVM.Dump
13
14 import Utilities
15
16 main = do
17   args <- getArgs
18   case args of
19     [clspath] -> do
20       clsFile <- decodeFile clspath
21       putStrLn $ showListIx $ M.assocs $ constsPool (clsFile :: Class Pointers)
22       cls <- parseClassFile clspath
23       dumpClass cls    
24       let mainmethod = lookupMethod "main" cls -- "main|([Ljava/lang/String;)V" cf
25       testCFG mainmethod
26       putStrLn "foo"
27     _ -> error "Synopsis: dump-class File.class"
28
29 testCFG _ = undefined