On January 11, 2018 6:14:34 PM GMT+01:00, Segher Boessenkool <seg...@kernel.crashing.org> wrote: >On Thu, Jan 11, 2018 at 10:25:25AM -0600, Bill Schmidt wrote: >> This patch adds a pattern for "ori 31,31,0" as a speculation barrier, >and >> an associated built-in function. This is currently restricted to >Power7 >> and later. Documentation and test included. >> >> Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. > Is >> this okay for trunk?
Can you name it __builtin_rs6000_speculation_barrier() or similar please? >Tiny thing: > >> 2018-01-11 Bill Schmidt <wschm...@linux.vnet.ibm.com> >> >> * config/rs6000/rs6000-builtin.def (BU_P7_MISC_X): New #define. >> (SPEC_BARRIER): New instantiation of BU_P7_MISC_X. >> * config/rs6000/rs6000.c (rs6000_expand_builtin): Handle >> MISC_BUILTIN_SPEC_BARRIER. >> (rs6000_init_builtins): Likewise. >> * config/rs6000/rs6000.md (UNSPECV_SPEC_BARRIER): New UNSPECV >> enum value. >> (speculation_barrier): New define_insn. >> * doc/extend.texi: Document __builtin_speculation_barrier. >> >> [gcc/testsuite] >> >> 2018-01-11 Bill Schmidt <wschm...@linux.vnet.ibm.com> >> >> * gcc.target/powerpc/spec-barr-1.c: New file. > >> --- gcc/doc/extend.texi (revision 256364) >> +++ gcc/doc/extend.texi (working copy) >> @@ -15734,6 +15734,7 @@ unsigned long __builtin_divdeuo (unsigned >long, un >> unsigned int cdtbcd (unsigned int); >> unsigned int cbcdtd (unsigned int); >> unsigned int addg6s (unsigned int, unsigned int); >> +void __builtin_speculation_barrier (); > >void __builtin_speculation_barrier (void); > >Okay for trunk with that fixed. Pre-approved for backports, too, if >you >want some. > > >Segher