[Bug target/91248] New: __builtin___clear_cache is a no-op on SPARC

ro at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Jul 24 10:28:00 GMT 2019


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91248

            Bug ID: 91248
           Summary: __builtin___clear_cache is a no-op on SPARC
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
                CC: ebotcazou at gcc dot gnu.org
  Target Milestone: ---
            Target: sparc*-*-*

During the review of https://reviews.llvm.org/D64496 (which implements
__clear_cache for SPARC in LLVM's compiler-rt), the reviewer pointed out
that gcc is wrong wrt. its handling of __clear_cache on SPARC: while
sparc32_initialize_trampoline and sparc64_initialize_trampoline emit flush
insns directly, there's also __builtin___clear_cache, which currently is a
no-op
on SPARC: neither does the SPARC backend define CLEAR_INSN_CACHE (so libgcc's
__clear_cache is a no-op) nor is there a clear_cache insn.  Am I missing
somethere here?


More information about the Gcc-bugs mailing list