[Bug target/94136] GCC doc for built-in function __builtin___clear_cache() not 100% correct
andrew at sifive dot com
gcc-bugzilla@gcc.gnu.org
Wed Mar 11 08:57:29 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94136
Andrew Waterman <andrew at sifive dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |andrew at sifive dot com
--- Comment #2 from Andrew Waterman <andrew at sifive dot com> ---
The problematic sentence in the docs is "Otherwise either instructions
are emitted in-line to clear the instruction cache or a call to the
__clear_cache function in libgcc is made."
The problem is that the RISC-V port emits a call to a function, but
that function isn't named "__clear_cache." RISC-V is not unique in
this respect, though: the MIPS port uses a variety of function names
that can be overridden on the command line.
My recommendation is to replace the problematic sentence something
like: "Otherwise, a target-dependent code sequence effects the
requested instruction-stream synchronization operation. On some
targets, this sequence invokes the __clear_cache function in libgcc."
This formulation maintains the sentiment of the original, while
admitting the RISC-V and MIPS behavior.
More information about the Gcc-bugs
mailing list