Skip to content

Commit bbbdbce

Browse files
committed
14 failed / 220 passed / 7 skipped (up from 5)
1 parent 9f25ad3 commit bbbdbce

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

thunder/core/interpreter.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6713,7 +6713,7 @@ def _run_frame(
67136713
assert frame.inst_ptr <= max_inst_ptr
67146714
frame.inst_ptr += 1
67156715
inst: dis.Instruction = insts[inst_ptr_to_idx[frame.inst_ptr]]
6716-
6716+
print("#############", len(frame.interpreter_stack), inst)
67176717
# Updates the stack frame to the current position
67186718
# TODO maybe also have inst_ptr?
67196719
frame.nexti(inst)
@@ -6757,7 +6757,13 @@ def _run_frame(
67576757
frame.interpreter_stack.append(current_exception)
67586758
current_exception = None
67596759
skip_stack_effect_check = True
6760-
interpretation_result = et_handler // 2
6760+
if sys.version_info >= (3, 12):
6761+
# yeah, this is *really* ugly to make interpretation_result stay relative... maybe introduce another signal
6762+
interpretation_result = (
6763+
et_handler // 2 - idx_to_next_inst_ptr[inst_ptr_to_idx[frame.inst_ptr]]
6764+
)
6765+
else:
6766+
interpretation_result = et_handler // 2
67616767
else:
67626768
# This is Python 3.10-style unwinding
67636769
skip_stack_effect_check = True # or only do this in ifs below?

thunder/tests/test_interpreter.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2750,6 +2750,10 @@ def foo(x):
27502750
jfn()
27512751

27522752

2753+
@pytest.mark.skipif(
2754+
sys.version_info >= (3, 12),
2755+
reason="Python 3.12 code.InteractiveInterpreter().runsource does not use the displayhook as before",
2756+
)
27532757
def test_displayhook(jit):
27542758
from contextlib import redirect_stdout
27552759
import io

0 commit comments

Comments
 (0)