[all-commits] [llvm/llvm-project] f0990e: [PowerPC]: e500 target can't use lwsync, use msync...

Justin Hibbits via All-commits all-commits at lists.llvm.org
Mon Mar 23 15:17:13 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: f0990e104b0858fbdc4c726cd8da1ff166fe2dca
      https://github.com/llvm/llvm-project/commit/f0990e104b0858fbdc4c726cd8da1ff166fe2dca
  Author: Justin Hibbits <jrh29 at alumni.cwru.edu>
  Date:   2020-03-23 (Mon, 23 Mar 2020)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPC.td
    M llvm/test/CodeGen/PowerPC/atomics-fences.ll

  Log Message:
  -----------
  [PowerPC]: e500 target can't use lwsync, use msync instead

The e500 core has a silicon bug that triggers an illegal instruction
program trap on any sync other than msync.  Other cores will typically
ignore illegal sync types, and the documentation even implies that the
'illegal' bits are ignored.

Address this hardware deficiency by only using msync, like the PPC440.

Differential Revision:  https://reviews.llvm.org/D76614




More information about the All-commits mailing list