@@ -753,6 +753,8 @@ void PPCTargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features,
753
753
}
754
754
}
755
755
756
+ // Make sure that registers are added in the correct array index which should be
757
+ // the DWARF number for PPC registers.
756
758
const char *const PPCTargetInfo::GCCRegNames[] = {
757
759
" r0" , " r1" , " r2" , " r3" , " r4" , " r5" , " r6" , " r7" , " r8" ,
758
760
" r9" , " r10" , " r11" , " r12" , " r13" , " r14" , " r15" , " r16" , " r17" ,
@@ -807,6 +809,7 @@ ArrayRef<TargetInfo::GCCRegAlias> PPCTargetInfo::getGCCRegAliases() const {
807
809
// PPC ELFABIv2 DWARF Definition "Table 2.26. Mappings of Common Registers".
808
810
// vs0 ~ vs31 is mapping to 32 - 63,
809
811
// vs32 ~ vs63 is mapping to 77 - 108.
812
+ // And this mapping applies to all OSes which run on powerpc.
810
813
const TargetInfo::AddlRegName GCCAddlRegNames[] = {
811
814
// Table of additional register names to use in user input.
812
815
{{" vs0" }, 32 }, {{" vs1" }, 33 }, {{" vs2" }, 34 }, {{" vs3" }, 35 },
@@ -828,10 +831,7 @@ const TargetInfo::AddlRegName GCCAddlRegNames[] = {
828
831
};
829
832
830
833
ArrayRef<TargetInfo::AddlRegName> PPCTargetInfo::getGCCAddlRegNames () const {
831
- if (ABI == " elfv2" )
832
- return llvm::ArrayRef (GCCAddlRegNames);
833
- else
834
- return TargetInfo::getGCCAddlRegNames ();
834
+ return llvm::ArrayRef (GCCAddlRegNames);
835
835
}
836
836
837
837
static constexpr llvm::StringLiteral ValidCPUNames[] = {
0 commit comments