[patch] declare __clear_cache

Rafael EspĂ­ndola rafael.espindola at gmail.com
Tue May 14 04:57:35 PDT 2013


> I thought builtins didn't need declarations? I can't provoke any
> warning or error on a vaguely GCC-like compiler.

Ah, I found what changed: I started building with -std=c++11. GCC will compile

void f(char *a, char *b) {
  __clear_cache(a, b);
}

in the gnu modes (-std=gnu++98, -std=gnu++11), but not in the strict
modes (-std=c++11).

It is easy to just build with -std=gnu++11, but since this small patch
is all that is needed to build with -std=c++11, it is probably a good
thing, no?

> Though I do notice that I've declared it incorrectly on AArch64 (your
> patch breaks self-hosting and the libgcc documentation is clear that
> it's my fault).

I will update the patch to correct the builtin definition in clang too.

> Tim.

Cheers,
Rafael



More information about the llvm-commits mailing list