summaryrefslogtreecommitdiff
path: root/lib/Target/SystemZ/SystemZSubtarget.h
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/SystemZSubtarget.h
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/SystemZSubtarget.h')
-rw-r--r--lib/Target/SystemZ/SystemZSubtarget.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/SystemZ/SystemZSubtarget.h b/lib/Target/SystemZ/SystemZSubtarget.h
index 4a86287071..9d5dfc8a1d 100644
--- a/lib/Target/SystemZ/SystemZSubtarget.h
+++ b/lib/Target/SystemZ/SystemZSubtarget.h
@@ -28,6 +28,7 @@ class StringRef;
class SystemZSubtarget : public SystemZGenSubtargetInfo {
protected:
bool HasDistinctOps;
+ bool HasLoadStoreOnCond;
private:
Triple TargetTriple;
@@ -42,6 +43,9 @@ public:
// Return true if the target has the distinct-operands facility.
bool hasDistinctOps() const { return HasDistinctOps; }
+ // Return true if the target has the load/store-on-condition facility.
+ bool hasLoadStoreOnCond() const { return HasLoadStoreOnCond; }
+
// Return true if GV can be accessed using LARL for reloc model RM
// and code model CM.
bool isPC32DBLSymbol(const GlobalValue *GV, Reloc::Model RM,