From e37996873a8b1c43fa69ab37053d9c40f0091c19 Mon Sep 17 00:00:00 2001 From: Lioncache Date: Thu, 2 Oct 2025 02:47:11 -0400 Subject: [PATCH] IRDumper: Add missing FenceType entry --- FEXCore/Source/Interface/IR/IR.json | 1 + FEXCore/Source/Interface/IR/IRDumper.cpp | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/FEXCore/Source/Interface/IR/IR.json b/FEXCore/Source/Interface/IR/IR.json index 8482df82c..4c7e59e07 100644 --- a/FEXCore/Source/Interface/IR/IR.json +++ b/FEXCore/Source/Interface/IR/IR.json @@ -750,6 +750,7 @@ "FenceType::Load: Ensures load memory operations are serialized", "FenceType::Store: Ensures store memory operations are serialized", "FenceType::LoadStore: Ensures loads and store memory operations are serialized", + "FenceType::Inst: Instruction barrier. Ensures all instructions after this point will be explicitly fetched", "Ensures the memory operations are globally visible" ], "HasSideEffects": true diff --git a/FEXCore/Source/Interface/IR/IRDumper.cpp b/FEXCore/Source/Interface/IR/IRDumper.cpp index 88e3913a2..55588e707 100644 --- a/FEXCore/Source/Interface/IR/IRDumper.cpp +++ b/FEXCore/Source/Interface/IR/IRDumper.cpp @@ -125,15 +125,15 @@ static void PrintArg(fextl::stringstream* out, const IRListView* IR, OrderedNode } static void PrintArg(fextl::stringstream* out, const IRListView*, FenceType Arg) { - if (Arg == FenceType::Load) { - *out << "Loads"; - } else if (Arg == FenceType::Store) { - *out << "Stores"; - } else if (Arg == FenceType::LoadStore) { - *out << "LoadStores"; - } else { - *out << ""; - } + *out << [Arg] { + switch (Arg) { + case FenceType::Load: return "Loads"; + case FenceType::Store: return "Stores"; + case FenceType::LoadStore: return "LoadStores"; + case FenceType::Inst: return "Instruction"; + } + return ""; + }(); } static void PrintArg(fextl::stringstream* out, const IRListView*, RoundMode Arg) {