[PATCH] D104386: [PowerPC][Builtins] Added a number of builtins for compatibility with XL.

Nemanja Ivanovic via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 30 14:44:02 PDT 2021


nemanjai added a comment.

In D104386#2973245 <https://reviews.llvm.org/D104386#2973245>, @dim wrote:

> Note that this unexpectedly broke FreeBSD's powerpc64 builds, as we've long used the following in our `lib/libc/powerpc64/string/bcopy.S`:
>
>   #ifndef FN_NAME
>   #ifdef MEMMOVE
>   #define FN_NAME                         __memmove
>   WEAK_REFERENCE(__memmove, memmove);
>   #else
>   #define FN_NAME                         __bcopy
>   WEAK_REFERENCE(__bcopy, bcopy);
>   #endif
>   #endif
>
> so now we're getting:
>
>   lib/libc/powerpc64/string/bcopy.S:51:25: error: Recursive use of 'bcopy'
>   .weak bcopy; .equ bcopy,bcopy;
>                           ^
>
> However, I think I can make do with adding `-U__bcopy` to the clang command line. It would have been nice if these aliases were behind some `--xl-compat` flag... :)

I am really sorry that we broke you. Would it help if we defined this macro only if compiling for Linux/AIX? If so, are there any others (or perhaps all of them) that you'd like us to conditionally define only on AIX/Linux?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D104386/new/

https://reviews.llvm.org/D104386



More information about the cfe-commits mailing list