File tree Expand file tree Collapse file tree 2 files changed +15
-1
lines changed Expand file tree Collapse file tree 2 files changed +15
-1
lines changed Original file line number Diff line number Diff line change 10
10
//
11
11
// ===----------------------------------------------------------------------===//
12
12
13
+ #include " AArch64InstrInfo.h"
13
14
#include " AArch64MCSymbolizer.h"
14
15
#include " MCTargetDesc/AArch64AddressingModes.h"
15
16
#include " MCTargetDesc/AArch64FixupKinds.h"
@@ -635,7 +636,7 @@ class AArch64MCPlusBuilder : public MCPlusBuilder {
635
636
}
636
637
637
638
bool isIndirectCall (const MCInst &Inst) const override {
638
- return Inst.getOpcode () == AArch64::BLR ;
639
+ return isIndirectCallOpcode ( Inst.getOpcode ()) ;
639
640
}
640
641
641
642
MCPhysReg getSpRegister (int Size) const {
Original file line number Diff line number Diff line change @@ -726,6 +726,19 @@ static inline bool isIndirectBranchOpcode(int Opc) {
726
726
return false ;
727
727
}
728
728
729
+ static inline bool isIndirectCallOpcode (unsigned Opc) {
730
+ switch (Opc) {
731
+ case AArch64::BLR:
732
+ case AArch64::BLRAA:
733
+ case AArch64::BLRAB:
734
+ case AArch64::BLRAAZ:
735
+ case AArch64::BLRABZ:
736
+ return true ;
737
+ default :
738
+ return false ;
739
+ }
740
+ }
741
+
729
742
static inline bool isPTrueOpcode (unsigned Opc) {
730
743
switch (Opc) {
731
744
case AArch64::PTRUE_B:
You can’t perform that action at this time.
0 commit comments