[Lldb-commits] [PATCH] D16814: Fix handling of the arm IT instruction in the unwinder

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Tue Feb 2 10:59:11 PST 2016


labath added a subscriber: labath.

================
Comment at: include/lldb/Core/EmulateInstruction.h:406-410
@@ -405,4 +405,7 @@
 
-    virtual bool
-    IsInstructionConditional() { return false; }
+    // Returns a condition code in the for of uint32_t where UINT32_MAX means that the instruction
+    // is not conditional and other values specify the condition of the instruction in an
+    // architecture specififc way.
+    virtual uint32_t
+    GetInstructionCondition() { return UINT32_MAX; }
 
----------------
clayborg wrote:
> Add:
> ```
> virtual uint32_t
> GetUnconditionalCondition () { return 0; };
> ```
> 
> And change GetInstructionCondition to use the above function:
> 
> ```
> virtual uint32_t
> GetInstructionCondition() { return GetUnconditionalCondition (); }
> ```
> 
> See inline comments below for more info...
How about
```
virtual llvm::Optional<uint32_t>
GetInstructionCondition() { return llvm::NoneType; }
```
?


http://reviews.llvm.org/D16814





More information about the lldb-commits mailing list