@@ -180,6 +180,8 @@ static bool is_gcc6_localentry_bundled_sym(struct kpatch_elf *kelf,
180180 return false;
181181 case S390 :
182182 return false;
183+ case LOONGARCH64 :
184+ return false;
183185 default :
184186 ERROR ("unsupported arch" );
185187 }
@@ -694,6 +696,11 @@ static bool insn_is_load_immediate(struct kpatch_elf *kelf, void *addr)
694696
695697 break ;
696698
699+ case LOONGARCH64 :
700+ /* to be done */
701+
702+ break ;
703+
697704 case S390 :
698705 /* arg2: lghi %r3, imm */
699706 if (insn [0 ] == 0xa7 && insn [1 ] == 0x39 )
@@ -2420,22 +2427,22 @@ static bool static_call_sites_group_filter(struct lookup_table *lookup,
24202427static struct special_section special_sections [] = {
24212428 {
24222429 .name = "__bug_table" ,
2423- .arch = X86_64 | PPC64 | S390 ,
2430+ .arch = X86_64 | PPC64 | S390 | LOONGARCH64 ,
24242431 .group_size = bug_table_group_size ,
24252432 },
24262433 {
24272434 .name = ".fixup" ,
2428- .arch = X86_64 | PPC64 | S390 ,
2435+ .arch = X86_64 | PPC64 | S390 | LOONGARCH64 ,
24292436 .group_size = fixup_group_size ,
24302437 },
24312438 {
24322439 .name = "__ex_table" , /* must come after .fixup */
2433- .arch = X86_64 | PPC64 | S390 ,
2440+ .arch = X86_64 | PPC64 | S390 | LOONGARCH64 ,
24342441 .group_size = ex_table_group_size ,
24352442 },
24362443 {
24372444 .name = "__jump_table" ,
2438- .arch = X86_64 | PPC64 | S390 ,
2445+ .arch = X86_64 | PPC64 | S390 | LOONGARCH64 ,
24392446 .group_size = jump_table_group_size ,
24402447 .group_filter = jump_table_group_filter ,
24412448 },
@@ -2456,7 +2463,7 @@ static struct special_section special_sections[] = {
24562463 },
24572464 {
24582465 .name = ".altinstructions" ,
2459- .arch = X86_64 | S390 ,
2466+ .arch = X86_64 | S390 | LOONGARCH64 ,
24602467 .group_size = altinstructions_group_size ,
24612468 },
24622469 {
0 commit comments