Skip to content
  • Jason A. Donenfeld's avatar
    arm64: Implement __lshrti3 library function · 9bfe7553
    Jason A. Donenfeld authored
    Commit fb872273
    
     ("arm64: support __int128 on gcc 5+") added support
    for the __int128 data type, but this breaks the build in some configurations
    where GCC ends up emitting calls to the __lshrti3 helper in libgcc, which
    results in a link error:
    
      kernel/sched/fair.o: In function `__calc_delta':
      fair.c:(.text+0xca0): undefined reference to `__lshrti3'
      kernel/time/timekeeping.o: In function `timekeeping_resume':
      timekeeping.c:(.text+0x3f60): undefined reference to `__lshrti3'
      make: *** [vmlinux] Error 1
    
    Fix the build by providing an implementation of __lshrti3, like we do
    already for __ashlti3 and __ashrti3.
    
    Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
    Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
    9bfe7553