[PATCH] D52483: [AArch64][v8.5A] Add speculation barriers SSBB and PSSBB
Tim Northover via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 27 08:21:07 PDT 2018
t.p.northover accepted this revision.
t.p.northover added a comment.
This revision is now accepted and ready to land.
Thanks for the clarification. LGTM.
================
Comment at: lib/Target/AArch64/AArch64InstrInfo.td:648-649
def : InstAlias<"isb", (ISB 0xf)>;
+def : InstAlias<"ssbb", (DSB 0)>;
+def : InstAlias<"pssbb", (DSB 4)>;
----------------
olista01 wrote:
> t.p.northover wrote:
> > I think these should have `Predicates` set since not all CPUs support them.
> This is deliberate, these instructions have been retroactively added to v8.0-A onwards. This works because they are aliases for "DSB #0" and "DSB #4", which older specs say have to behave like "DSB SY", which has stronger semantics than SSBB and PSSBB. This means that existing cores already implement these, though in a more costly way than v8.5-A allows.
OK, I wondered if it was something like that but the manual was a bit vague on the topic and I wasn't certain the existing DSB sufficed.
Repository:
rL LLVM
https://reviews.llvm.org/D52483
More information about the llvm-commits
mailing list