[llvm-branch-commits] [llvm] [Dexter] Add at_frame_idx to check values in frames above current (PR #203505)

Orlando Cazalet-Hyams via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Jun 18 08:08:42 PDT 2026


================
@@ -149,6 +149,13 @@ def get_active_wheres(where: Where, scope: Scope):
                 # If the target frame is -1, we can't match the !where yet, but we should prepare to step into it.
                 active_where_expects[scope.where].pending_wheres.append(where)
                 return
+            if where.at_frame_idx is not None:
+                # !and {at_frame_idx} is a special case: it cannot contain !where nodes, so there's no point checking it
+                # when the parent !where is not in the current frame (frame_idx=0), and we match its other conditions
+                # against the requested frame index.
+                if target_frame_idx != 0 or where.at_frame_idx >= len(step_info.frames):
----------------
OCHyams wrote:

`it cannot contain !where nodes` is it easy to check this in an assert? I'll leave it up to you if it's worth it either way, especially if this is verified/enforced elsewhere

https://github.com/llvm/llvm-project/pull/203505


More information about the llvm-branch-commits mailing list