summaryrefslogtreecommitdiff
path: root/lib/Target/SystemZ/SystemZProcessors.td
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-07-25 08:57:02 +0000
committerRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-07-25 08:57:02 +0000
commitb284e1bf08d24deb20b7deab71fce6f3034cc89a (patch)
treeb5f5a9f966a07559972c3d0a2ab4743d05b1ace2 /lib/Target/SystemZ/SystemZProcessors.td
parent13372886a6d387c8847143744f26790a250f4360 (diff)
downloadllvm-b284e1bf08d24deb20b7deab71fce6f3034cc89a.tar.gz
llvm-b284e1bf08d24deb20b7deab71fce6f3034cc89a.tar.bz2
llvm-b284e1bf08d24deb20b7deab71fce6f3034cc89a.tar.xz
[SystemZ] Add STOC and STOCG
These instructions are allowed to trap even if the condition is false, so for now they are only used for "*ptr = (cond ? x : *ptr)"-style constructs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187111 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZProcessors.td')
-rw-r--r--lib/Target/SystemZ/SystemZProcessors.td11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/Target/SystemZ/SystemZProcessors.td b/lib/Target/SystemZ/SystemZProcessors.td
index 5668ae3819..96fa6a42d0 100644
--- a/lib/Target/SystemZ/SystemZProcessors.td
+++ b/lib/Target/SystemZ/SystemZProcessors.td
@@ -21,6 +21,13 @@ def FeatureDistinctOps : SystemZFeature<
"Assume that the distinct-operands facility is installed"
>;
+def FeatureLoadStoreOnCond : SystemZFeature<
+ "load-store-on-cond", "LoadStoreOnCond",
+ "Assume that the load/store-on-condition facility is installed"
+>;
+
def : Processor<"z10", NoItineraries, []>;
-def : Processor<"z196", NoItineraries, [FeatureDistinctOps]>;
-def : Processor<"zEC12", NoItineraries, [FeatureDistinctOps]>;
+def : Processor<"z196", NoItineraries,
+ [FeatureDistinctOps, FeatureLoadStoreOnCond]>;
+def : Processor<"zEC12", NoItineraries,
+ [FeatureDistinctOps, FeatureLoadStoreOnCond]>;