1212// ===----------------------------------------------------------------------===//
1313
1414#include " MCTargetDesc/M68kFixupKinds.h"
15+ #include " MCTargetDesc/M68kMCExpr.h"
1516#include " MCTargetDesc/M68kMCTargetDesc.h"
1617
1718#include " llvm/BinaryFormat/ELF.h"
@@ -44,8 +45,8 @@ M68kELFObjectWriter::~M68kELFObjectWriter() {}
4445
4546enum M68kRelType { RT_32, RT_16, RT_8 };
4647
47- static M68kRelType
48- getType ( unsigned Kind, MCSymbolRefExpr::VariantKind &Modifier, bool &IsPCRel) {
48+ static M68kRelType getType ( unsigned Kind, M68kMCExpr::Specifier &Modifier,
49+ bool &IsPCRel) {
4950 switch (Kind) {
5051 case FK_Data_4:
5152 case FK_PCRel_4:
@@ -64,14 +65,14 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
6465 const MCValue &Target,
6566 const MCFixup &Fixup,
6667 bool IsPCRel) const {
67- MCSymbolRefExpr::VariantKind Modifier = Target.getAccessVariant ();
68+ auto Specifier = M68kMCExpr::Specifier ( Target.getAccessVariant () );
6869 unsigned Kind = Fixup.getKind ();
69- M68kRelType Type = getType (Kind, Modifier , IsPCRel);
70- switch (Modifier ) {
70+ M68kRelType Type = getType (Kind, Specifier , IsPCRel);
71+ switch (Specifier ) {
7172 default :
7273 llvm_unreachable (" Unimplemented" );
7374
74- case MCSymbolRefExpr ::VK_TLSGD:
75+ case M68kMCExpr ::VK_TLSGD:
7576 switch (Type) {
7677 case RT_32:
7778 return ELF::R_68K_TLS_GD32;
@@ -81,7 +82,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
8182 return ELF::R_68K_TLS_GD8;
8283 }
8384 llvm_unreachable (" Unrecognized size" );
84- case MCSymbolRefExpr ::VK_TLSLDM:
85+ case M68kMCExpr ::VK_TLSLDM:
8586 switch (Type) {
8687 case RT_32:
8788 return ELF::R_68K_TLS_LDM32;
@@ -91,7 +92,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
9192 return ELF::R_68K_TLS_LDM8;
9293 }
9394 llvm_unreachable (" Unrecognized size" );
94- case MCSymbolRefExpr ::VK_TLSLD:
95+ case M68kMCExpr ::VK_TLSLD:
9596 switch (Type) {
9697 case RT_32:
9798 return ELF::R_68K_TLS_LDO32;
@@ -101,7 +102,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
101102 return ELF::R_68K_TLS_LDO8;
102103 }
103104 llvm_unreachable (" Unrecognized size" );
104- case MCSymbolRefExpr ::VK_GOTTPOFF:
105+ case M68kMCExpr ::VK_GOTTPOFF:
105106 switch (Type) {
106107 case RT_32:
107108 return ELF::R_68K_TLS_IE32;
@@ -111,7 +112,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
111112 return ELF::R_68K_TLS_IE8;
112113 }
113114 llvm_unreachable (" Unrecognized size" );
114- case MCSymbolRefExpr ::VK_TPOFF:
115+ case M68kMCExpr ::VK_TPOFF:
115116 switch (Type) {
116117 case RT_32:
117118 return ELF::R_68K_TLS_LE32;
@@ -121,7 +122,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
121122 return ELF::R_68K_TLS_LE8;
122123 }
123124 llvm_unreachable (" Unrecognized size" );
124- case MCSymbolRefExpr ::VK_None:
125+ case M68kMCExpr ::VK_None:
125126 switch (Type) {
126127 case RT_32:
127128 return IsPCRel ? ELF::R_68K_PC32 : ELF::R_68K_32;
@@ -131,7 +132,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
131132 return IsPCRel ? ELF::R_68K_PC8 : ELF::R_68K_8;
132133 }
133134 llvm_unreachable (" Unrecognized size" );
134- case MCSymbolRefExpr ::VK_GOTPCREL:
135+ case M68kMCExpr ::VK_GOTPCREL:
135136 switch (Type) {
136137 case RT_32:
137138 return ELF::R_68K_GOTPCREL32;
@@ -141,7 +142,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
141142 return ELF::R_68K_GOTPCREL8;
142143 }
143144 llvm_unreachable (" Unrecognized size" );
144- case MCSymbolRefExpr ::VK_GOTOFF:
145+ case M68kMCExpr ::VK_GOTOFF:
145146 assert (!IsPCRel);
146147 switch (Type) {
147148 case RT_32:
@@ -152,7 +153,7 @@ unsigned M68kELFObjectWriter::getRelocType(MCContext &Ctx,
152153 return ELF::R_68K_GOTOFF8;
153154 }
154155 llvm_unreachable (" Unrecognized size" );
155- case MCSymbolRefExpr ::VK_PLT:
156+ case M68kMCExpr ::VK_PLT:
156157 switch (Type) {
157158 case RT_32:
158159 return ELF::R_68K_PLT32;
0 commit comments