From 2ecc1fc02a57dafef8692ef094a4b573040cf2c7 Mon Sep 17 00:00:00 2001 From: Sjoerd Meijer Date: Wed, 14 Sep 2016 14:32:17 +0000 Subject: [PATCH] MCInstrDesc: this fixes an issue setting/getting member Flags, which is an uint64_t. However, getter function getFlags returned an unsigned, and in function hasProperty (1 << MCFlag) was used instead of (1ULL << MCFlag). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@281483 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineInstr.h | 4 ++-- include/llvm/MC/MCInstrDesc.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/llvm/CodeGen/MachineInstr.h b/include/llvm/CodeGen/MachineInstr.h index 3870a1ffc9c..3da62a33781 100644 --- a/include/llvm/CodeGen/MachineInstr.h +++ b/include/llvm/CodeGen/MachineInstr.h @@ -391,10 +391,10 @@ public: bool hasProperty(unsigned MCFlag, QueryType Type = AnyInBundle) const { // Inline the fast path for unbundled or bundle-internal instructions. if (Type == IgnoreBundle || !isBundled() || isBundledWithPred()) - return getDesc().getFlags() & (1 << MCFlag); + return getDesc().getFlags() & (1ULL << MCFlag); // If this is the first instruction in a bundle, take the slow path. - return hasPropertyInBundle(1 << MCFlag, Type); + return hasPropertyInBundle(1ULL << MCFlag, Type); } /// Return true if this instruction can have a variable number of operands. diff --git a/include/llvm/MC/MCInstrDesc.h b/include/llvm/MC/MCInstrDesc.h index d7887efbbf6..340d8253b8c 100644 --- a/include/llvm/MC/MCInstrDesc.h +++ b/include/llvm/MC/MCInstrDesc.h @@ -216,7 +216,7 @@ public: unsigned getNumDefs() const { return NumDefs; } /// \brief Return flags of this instruction. - unsigned getFlags() const { return Flags; } + uint64_t getFlags() const { return Flags; } /// \brief Return true if this instruction can have a variable number of /// operands. In this case, the variable operands will be after the normal -- 2.50.1