diff --git a/scripts/runner.py b/scripts/runner.py
index 29f37efe84939dc2acad9d6b6fe5a7f03f80be70..c61d2945be50df18775ffd872adc4df954fa2285 100644
--- a/scripts/runner.py
+++ b/scripts/runner.py
@@ -90,7 +90,9 @@ class Runner():
         os.system('cmake ..')
         os.system('make -j8')
         os.chdir('..')
-
+    
+    def open_ir(self,test):
+        os.system('code '+test_results+"/"+test+"/ir/" + self.scheme + ".ir")
     def clean(self):
         if os.path.exists(build_file+"/compiler"):
             os.remove(build_file+"/compiler")
@@ -142,7 +144,6 @@ class Runner():
 
 
     def generate_path(self):
-        
 
         if not os.path.exists(build_file):
             os.mkdir(build_file)
@@ -205,6 +206,9 @@ class Runner():
             subprocess.run(frontend_instr.format(v=self.v,sy=sy_path, ir=ir).split(), stdout=log_file, stderr=self.error_log_file, bufsize=1)
         log_file.close()
 
+        if self.args.debug:
+            self.open_ir(testcase)
+
 
     def ir_to_asm(self, testcase):
         self.check("",testcase)