From 969500d79f2e8a4074c45fd26f620d575b392f8e Mon Sep 17 00:00:00 2001 From: pleroy Date: Sun, 5 Jan 2025 00:50:57 +0100 Subject: [PATCH] Merge test --- tests/test_semantics.py | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/tests/test_semantics.py b/tests/test_semantics.py index 576318a..352de77 100755 --- a/tests/test_semantics.py +++ b/tests/test_semantics.py @@ -89,6 +89,9 @@ class TestSemanticTools(unittest.TestCase): cls.machine_model_csx = MachineModel( path_to_yaml=os.path.join(cls.MODULE_DATA_DIR, "csx.yml") ) + cls.machine_model_skx = MachineModel( + path_to_yaml=os.path.join(cls.MODULE_DATA_DIR, "skx.yml") + ) cls.machine_model_tx2 = MachineModel( path_to_yaml=os.path.join(cls.MODULE_DATA_DIR, "tx2.yml") ) @@ -107,6 +110,11 @@ class TestSemanticTools(unittest.TestCase): cls.machine_model_csx, path_to_yaml=os.path.join(cls.MODULE_DATA_DIR, "isa/x86.yml"), ) + cls.semantics_skx_intel = ArchSemantics( + cls.parser_x86_intel, + cls.machine_model_skx, + path_to_yaml=os.path.join(cls.MODULE_DATA_DIR, "isa/x86.yml"), + ) cls.semantics_aarch64 = ISASemantics(cls.parser_AArch64) cls.semantics_tx2 = ArchSemantics( cls.parser_AArch64, @@ -136,10 +144,10 @@ class TestSemanticTools(unittest.TestCase): for i in range(len(cls.kernel_x86_intel)): cls.semantics_csx_intel.assign_src_dst(cls.kernel_x86_intel[i]) cls.semantics_csx_intel.assign_tp_lt(cls.kernel_x86_intel[i]) - cls.semantics_csx_intel.normalize_instruction_forms(cls.kernel_x86_intel_memdep) + cls.semantics_skx_intel.normalize_instruction_forms(cls.kernel_x86_intel_memdep) for i in range(len(cls.kernel_x86_intel_memdep)): - cls.semantics_csx_intel.assign_src_dst(cls.kernel_x86_intel_memdep[i]) - cls.semantics_csx_intel.assign_tp_lt(cls.kernel_x86_intel_memdep[i]) + cls.semantics_skx_intel.assign_src_dst(cls.kernel_x86_intel_memdep[i]) + cls.semantics_skx_intel.assign_tp_lt(cls.kernel_x86_intel_memdep[i]) cls.semantics_tx2.normalize_instruction_forms(cls.kernel_AArch64) for i in range(len(cls.kernel_AArch64)): cls.semantics_tx2.assign_src_dst(cls.kernel_AArch64[i]) @@ -502,12 +510,16 @@ class TestSemanticTools(unittest.TestCase): dg = KernelDG( self.kernel_x86_intel_memdep, self.parser_x86_intel, - self.machine_model_csx, - self.semantics_csx_intel, + self.machine_model_skx, + self.semantics_skx_intel, ) self.assertTrue(nx.algorithms.dag.is_directed_acyclic_graph(dg.dg)) self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=3)), {6, 8}) self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=5)), {10, 12}) + self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=5)), {10, 12}) + self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=18)), {18.875}) + self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=18.875)), {19}) + self.assertEqual(set(dg.get_dependent_instruction_forms(line_number=19)), set()) with self.assertRaises(ValueError): dg.get_dependent_instruction_forms() # test dot creation