From 2623df180b9e86512fe69b8f90563fbd8add89c3 Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Fri, 28 Aug 2026 23:59:37 +0800 Subject: [CodeGen] Complete LaneMask bitwise operations --- backend/lib/CodeGen/LiveRegUnits.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'backend/lib/CodeGen/LiveRegUnits.cpp') diff --git a/backend/lib/CodeGen/LiveRegUnits.cpp b/backend/lib/CodeGen/LiveRegUnits.cpp index e0aa992..935478e 100644 --- a/backend/lib/CodeGen/LiveRegUnits.cpp +++ b/backend/lib/CodeGen/LiveRegUnits.cpp @@ -21,10 +21,6 @@ namespace rcc { namespace { -[[nodiscard]] LaneMask subtractLanes(LaneMask Left, LaneMask Right) noexcept { - return LaneMask::fromRaw(Left.rawValue() & ~Right.rawValue()); -} - template void addLanes(std::unordered_map &Values, KeyT Key, LaneMask Lanes) { if (Lanes.empty()) @@ -34,7 +30,7 @@ void addLanes(std::unordered_map &Values, KeyT Key, LaneMask Lan Values.emplace(Key, Lanes); return; } - Position->second = Position->second | Lanes; + Position->second |= Lanes; } template @@ -42,7 +38,7 @@ void removeLanes(std::unordered_map &Values, KeyT Key, LaneMask const auto Position = Values.find(Key); if (Position == Values.end() || Lanes.empty()) return; - Position->second = subtractLanes(Position->second, Lanes); + Position->second &= ~Lanes; if (Position->second.empty()) Values.erase(Position); } -- cgit v1.2.3