diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-25 08:57:02 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-25 08:57:02 +0000 |
commit | b284e1bf08d24deb20b7deab71fce6f3034cc89a (patch) | |
tree | b5f5a9f966a07559972c3d0a2ab4743d05b1ace2 /lib/Target/SystemZ/SystemZProcessors.td | |
parent | 13372886a6d387c8847143744f26790a250f4360 (diff) | |
download | llvm-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.td | 11 |
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]>; |