Lines Matching full:loongarch
1 //=- LoongArchMCCodeEmitter.cpp - Convert LoongArch code to machine code --===//
129 bool EnableRelax = STI.hasFeature(LoongArch::FeatureRelax); in getExprOpValue()
132 LoongArch::Fixups FixupKind = LoongArch::fixup_loongarch_invalid; in getExprOpValue()
145 FixupKind = LoongArch::fixup_loongarch_b16; in getExprOpValue()
148 FixupKind = LoongArch::fixup_loongarch_b21; in getExprOpValue()
153 FixupKind = LoongArch::fixup_loongarch_b26; in getExprOpValue()
156 FixupKind = LoongArch::fixup_loongarch_abs_hi20; in getExprOpValue()
159 FixupKind = LoongArch::fixup_loongarch_abs_lo12; in getExprOpValue()
162 FixupKind = LoongArch::fixup_loongarch_abs64_lo20; in getExprOpValue()
165 FixupKind = LoongArch::fixup_loongarch_abs64_hi12; in getExprOpValue()
168 FixupKind = LoongArch::fixup_loongarch_pcala_hi20; in getExprOpValue()
171 FixupKind = LoongArch::fixup_loongarch_pcala_lo12; in getExprOpValue()
174 FixupKind = LoongArch::fixup_loongarch_pcala64_lo20; in getExprOpValue()
177 FixupKind = LoongArch::fixup_loongarch_pcala64_hi12; in getExprOpValue()
180 FixupKind = LoongArch::fixup_loongarch_got_pc_hi20; in getExprOpValue()
183 FixupKind = LoongArch::fixup_loongarch_got_pc_lo12; in getExprOpValue()
186 FixupKind = LoongArch::fixup_loongarch_got64_pc_lo20; in getExprOpValue()
189 FixupKind = LoongArch::fixup_loongarch_got64_pc_hi12; in getExprOpValue()
192 FixupKind = LoongArch::fixup_loongarch_got_hi20; in getExprOpValue()
195 FixupKind = LoongArch::fixup_loongarch_got_lo12; in getExprOpValue()
198 FixupKind = LoongArch::fixup_loongarch_got64_lo20; in getExprOpValue()
201 FixupKind = LoongArch::fixup_loongarch_got64_hi12; in getExprOpValue()
204 FixupKind = LoongArch::fixup_loongarch_tls_le_hi20; in getExprOpValue()
207 FixupKind = LoongArch::fixup_loongarch_tls_le_lo12; in getExprOpValue()
210 FixupKind = LoongArch::fixup_loongarch_tls_le64_lo20; in getExprOpValue()
213 FixupKind = LoongArch::fixup_loongarch_tls_le64_hi12; in getExprOpValue()
216 FixupKind = LoongArch::fixup_loongarch_tls_ie_pc_hi20; in getExprOpValue()
219 FixupKind = LoongArch::fixup_loongarch_tls_ie_pc_lo12; in getExprOpValue()
222 FixupKind = LoongArch::fixup_loongarch_tls_ie64_pc_lo20; in getExprOpValue()
225 FixupKind = LoongArch::fixup_loongarch_tls_ie64_pc_hi12; in getExprOpValue()
228 FixupKind = LoongArch::fixup_loongarch_tls_ie_hi20; in getExprOpValue()
231 FixupKind = LoongArch::fixup_loongarch_tls_ie_lo12; in getExprOpValue()
234 FixupKind = LoongArch::fixup_loongarch_tls_ie64_lo20; in getExprOpValue()
237 FixupKind = LoongArch::fixup_loongarch_tls_ie64_hi12; in getExprOpValue()
240 FixupKind = LoongArch::fixup_loongarch_tls_ld_pc_hi20; in getExprOpValue()
243 FixupKind = LoongArch::fixup_loongarch_tls_ld_hi20; in getExprOpValue()
246 FixupKind = LoongArch::fixup_loongarch_tls_gd_pc_hi20; in getExprOpValue()
249 FixupKind = LoongArch::fixup_loongarch_tls_gd_hi20; in getExprOpValue()
252 FixupKind = LoongArch::fixup_loongarch_call36; in getExprOpValue()
255 FixupKind = LoongArch::fixup_loongarch_tls_desc_pc_hi20; in getExprOpValue()
258 FixupKind = LoongArch::fixup_loongarch_tls_desc_pc_lo12; in getExprOpValue()
261 FixupKind = LoongArch::fixup_loongarch_tls_desc64_pc_lo20; in getExprOpValue()
264 FixupKind = LoongArch::fixup_loongarch_tls_desc64_pc_hi12; in getExprOpValue()
267 FixupKind = LoongArch::fixup_loongarch_tls_desc_hi20; in getExprOpValue()
270 FixupKind = LoongArch::fixup_loongarch_tls_desc_lo12; in getExprOpValue()
273 FixupKind = LoongArch::fixup_loongarch_tls_desc64_lo20; in getExprOpValue()
276 FixupKind = LoongArch::fixup_loongarch_tls_desc64_hi12; in getExprOpValue()
279 FixupKind = LoongArch::fixup_loongarch_tls_desc_ld; in getExprOpValue()
282 FixupKind = LoongArch::fixup_loongarch_tls_desc_call; in getExprOpValue()
285 FixupKind = LoongArch::fixup_loongarch_tls_le_hi20_r; in getExprOpValue()
288 FixupKind = LoongArch::fixup_loongarch_tls_le_lo12_r; in getExprOpValue()
291 FixupKind = LoongArch::fixup_loongarch_pcrel20_s2; in getExprOpValue()
294 FixupKind = LoongArch::fixup_loongarch_tls_ld_pcrel20_s2; in getExprOpValue()
297 FixupKind = LoongArch::fixup_loongarch_tls_gd_pcrel20_s2; in getExprOpValue()
300 FixupKind = LoongArch::fixup_loongarch_tls_desc_pcrel20_s2; in getExprOpValue()
309 case LoongArch::BEQ: in getExprOpValue()
310 case LoongArch::BNE: in getExprOpValue()
311 case LoongArch::BLT: in getExprOpValue()
312 case LoongArch::BGE: in getExprOpValue()
313 case LoongArch::BLTU: in getExprOpValue()
314 case LoongArch::BGEU: in getExprOpValue()
315 FixupKind = LoongArch::fixup_loongarch_b16; in getExprOpValue()
317 case LoongArch::BEQZ: in getExprOpValue()
318 case LoongArch::BNEZ: in getExprOpValue()
319 case LoongArch::BCEQZ: in getExprOpValue()
320 case LoongArch::BCNEZ: in getExprOpValue()
321 FixupKind = LoongArch::fixup_loongarch_b21; in getExprOpValue()
323 case LoongArch::B: in getExprOpValue()
324 case LoongArch::BL: in getExprOpValue()
325 FixupKind = LoongArch::fixup_loongarch_b26; in getExprOpValue()
330 assert(FixupKind != LoongArch::fixup_loongarch_invalid && in getExprOpValue()
341 0, Dummy, MCFixupKind(LoongArch::fixup_loongarch_relax), MI.getLoc())); in getExprOpValue()
353 case LoongArch::PseudoVREPLI_B: in expandToVectorLDI()
354 case LoongArch::PseudoXVREPLI_B: in expandToVectorLDI()
356 case LoongArch::PseudoVREPLI_H: in expandToVectorLDI()
357 case LoongArch::PseudoXVREPLI_H: in expandToVectorLDI()
360 case LoongArch::PseudoVREPLI_W: in expandToVectorLDI()
361 case LoongArch::PseudoXVREPLI_W: in expandToVectorLDI()
364 case LoongArch::PseudoVREPLI_D: in expandToVectorLDI()
365 case LoongArch::PseudoXVREPLI_D: in expandToVectorLDI()
393 0, Expr, MCFixupKind(LoongArch::fixup_loongarch_tls_le_add_r), in expandAddTPRel()
397 unsigned ADD = MI.getOpcode() == LoongArch::PseudoAddTPRel_D in expandAddTPRel()
398 ? LoongArch::ADD_D in expandAddTPRel()
399 : LoongArch::ADD_W; in expandAddTPRel()
416 case LoongArch::PseudoVREPLI_B: in encodeInstruction()
417 case LoongArch::PseudoVREPLI_H: in encodeInstruction()
418 case LoongArch::PseudoVREPLI_W: in encodeInstruction()
419 case LoongArch::PseudoVREPLI_D: in encodeInstruction()
420 return expandToVectorLDI<LoongArch::VLDI>(MI, CB, Fixups, STI); in encodeInstruction()
421 case LoongArch::PseudoXVREPLI_B: in encodeInstruction()
422 case LoongArch::PseudoXVREPLI_H: in encodeInstruction()
423 case LoongArch::PseudoXVREPLI_W: in encodeInstruction()
424 case LoongArch::PseudoXVREPLI_D: in encodeInstruction()
425 return expandToVectorLDI<LoongArch::XVLDI>(MI, CB, Fixups, STI); in encodeInstruction()
426 case LoongArch::PseudoAddTPRel_W: in encodeInstruction()
427 case LoongArch::PseudoAddTPRel_D: in encodeInstruction()