Greetings! Think this will do it: modified gcl/h/elf64_riscv64_reloc.h @@ -13,6 +13,7 @@ store_val(where,MASK(7)<<25,(s+a)<<20); break; case R_RISCV_CALL: + case R_RISCV_CALL_PLT: store_val(where,MASK(20)<<12,riscv_high(s+a-p)); store_val((void *)where+4,MASK(12)<<20,(s+a-p)<<20); break;
Testing now on Debian autobuilders. Take care, "YU Bo" <yuzib...@126.com> writes: > Hi camm, > > The gcl(2.6.13-3) has a ftbfs issue on riscv64: > > ``` > >>;; Loading "../tkl.o" > Unknown reloc type 19 > > Error: ERROR "The assertion !emsg(\"Unknown reloc type %lu\\n\", tp) > on line 186 of sfaslelf.c in function relocate failed: Success" > Fast links are on: do (si::use-fast-links nil) for debugging > Signalled by LOAD. > ERROR "The assertion !emsg(\"Unknown reloc type %lu\\n\", tp) on line > 186 of sfaslelf.c in function relocate failed: Success" > > Broken at LOAD. Type :H for Help. > 1 Return to top level. >>> > Error: UNDEFINED-FUNCTION :NAME TK::GET-AUTOLOADS > Fast links are on: do (si::use-fast-links nil) for debugging > Signalled by LOAD. > > UNDEFINED-FUNCTION :NAME TK::GET-AUTOLOADS > > Broken at LOAD. > 1 (abort) Return to debug level 1. > 2 Return to top level. >>>>make[2]: *** [makefile:24: all] Error 255 > ... > ``` > I grep the difference with 2.6.13-2 between 2.6.13-3, but not sure > which part will lead to this issue. > > In 2.6.7-66, there is one issue to be fixed on ppc, > > I downloaded the tarball file from snapshot.debian.org: > > ``` > +++ gcl-2.6.7/h/elf32_ppc_reloc.h > @@ -1,12 +1,3 @@ > - case R_PPC_REL24: /*FIXME, this is just for mcount, and reads > through the trampoline */ > - s+=a; > - s=*(ul *)s; > - if (ovchks(s,~MASK(26))) > - store_val(where,MASK(26),s|0x3); > - else if (ovchks(s-p,~MASK(26))) > - store_val(where,MASK(26),(s-p)|0x1); > - else massert(!"REL24 overflow"); > - break; > case R_PPC_ADDR16_HA: > > ``` > > The problem maybe is here( elf64_riscv64_reloc.h); > ``` > case R_RISCV_RELAX:/*FIXME figure out how to delete instructions efficiently*/ > break; > > ``` > Because I am new to gcl, so could you have a look? I have real riscv64 > hardware by hand and can test it. Many thanks. > > I should open a reportbug as is, but I think the riscv64 arch is not > release arch, this will increase the burden to the maintainers of > packages. Or I have one patch to fix one issue then I open a bug, so, > sorry, I disturb you in a private way. > > Two days I sent the mail via gmail, but I found it was rejected because > unknown searon, > so I use another mail to send to you. > > BR, > Bo > -- Camm Maguire c...@maguirefamily.org ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah