コード例 #1
0
 def testJump(self):
     lines = [Label('f'), Jump('f'), Label('f$exit')]
     cfg = delinearise(lines)
     #self.assertTrue(cfg.has_path(cfg.entry, cfg.entry), msg=cfg)
     self.assertFalse(cfg.has_path(cfg.entry, cfg.exit), msg=cfg)
コード例 #2
0
 def testSimple(self):
     lines = [Label('f'), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertEquals(cfg.entry.name, 'f')
     self.assertEquals(cfg.exit.name, 'f$exit')
     self.assertTrue(cfg.has_path(cfg.entry, cfg.exit))
コード例 #3
0
 def testSingleLine(self):
     lines = [Label('f'), Instruction(42), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertTrue(cfg.has_path(cfg.entry, Operation(42), cfg.exit),
                     msg=cfg)
コード例 #4
0
 def testForwardJump(self):
     lines = [Label('f'), Jump('f2'), Label('f2'), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertTrue(cfg.has_path(cfg.entry, Pass(), cfg.exit), msg=cfg)
コード例 #5
0
ファイル: linearise_tests.py プロジェクト: changbindu/cpu
 def testForwardJump(self):
     lines = [Label('f'), Jump('f2'), Label('f2'), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertTrue(cfg.has_path(cfg.entry, Pass(), cfg.exit), msg=cfg)
コード例 #6
0
ファイル: linearise_tests.py プロジェクト: changbindu/cpu
 def testJump(self):
     lines = [Label('f'), Jump('f'), Label('f$exit')]
     cfg = delinearise(lines)
     #self.assertTrue(cfg.has_path(cfg.entry, cfg.entry), msg=cfg)
     self.assertFalse(cfg.has_path(cfg.entry, cfg.exit), msg=cfg)
コード例 #7
0
ファイル: linearise_tests.py プロジェクト: changbindu/cpu
 def testSingleLine(self):
     lines = [Label('f'), Instruction(42), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertTrue(cfg.has_path(cfg.entry, Operation(42), cfg.exit), msg=cfg)
コード例 #8
0
ファイル: linearise_tests.py プロジェクト: changbindu/cpu
 def testSimple(self):
     lines = [Label('f'), Label('f$exit')]
     cfg = delinearise(lines)
     self.assertEquals(cfg.entry.name, 'f')
     self.assertEquals(cfg.exit.name, 'f$exit')
     self.assertTrue(cfg.has_path(cfg.entry, cfg.exit))