diff options
author | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2016-01-07 07:20:55 +0000 |
---|---|---|
committer | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2016-01-07 07:20:55 +0000 |
commit | 3939b690f6b47860140292e89f1c6f506c20cb19 (patch) | |
tree | 9e53214e220281db8dde6e7c60c9ab106127db1f /llvm/lib | |
parent | 68cffb17a07a1fb0b721c3ccdb260850ed5f0090 (diff) | |
download | bcm5719-llvm-3939b690f6b47860140292e89f1c6f506c20cb19.tar.gz bcm5719-llvm-3939b690f6b47860140292e89f1c6f506c20cb19.zip |
[SystemZ] Add hasSideEffects flag on Serialize instruction.
Serialize will perform a hardware serialization operation, and is
acting as a memory barrier. Therefore it must have the hasSideEffects
flag set so it will be treated as a global memory object.
Reviewed by Ulrich Weigand
llvm-svn: 257036
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/SystemZ/SystemZInstrInfo.td | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td index b9f2eb5514a..d5dabc2cd6a 100644 --- a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td @@ -1219,6 +1219,9 @@ def PFDRL : PrefetchRILPC<"pfdrl", 0xC62, z_prefetch>; // Atomic operations //===----------------------------------------------------------------------===// +// A serialization instruction that acts as a barrier for all memory +// accesses, which expands to "bcr 14, 0". +let hasSideEffects = 1 in def Serialize : Alias<2, (outs), (ins), [(z_serialize)]>; let Predicates = [FeatureInterlockedAccess1], Defs = [CC] in { |