// -*- mode:c++ -*-
-// Copyright (c) 2010-2011 ARM Limited
+// Copyright (c) 2010-2011,2017 ARM Limited
// All rights reserved
//
// The license below extends only to copyright in the software and shall
def __init__(self, *args, **kargs):
super(StoreImmEx, self).__init__(*args, **kargs)
- self.codeBlobs["postacc_code"] = "Result = !writeResult;"
+ self.codeBlobs["postacc_code"] = \
+ "Result = !writeResult; SevMailbox = 1; LLSCLock = 0;"
class StoreImm(StoreImmInst, StoreSingle):
decConstBase = 'LoadStoreImm'
def __init__(self, *args, **kargs):
super(StoreDoubleImmEx, self).__init__(*args, **kargs)
- self.codeBlobs["postacc_code"] = "Result = !writeResult;"
+ self.codeBlobs["postacc_code"] = \
+ "Result = !writeResult; SevMailbox = 1; LLSCLock = 0;"
class StoreDoubleImm(StoreImmInst, StoreDouble):
decConstBase = 'LoadStoreDImm'
// -*- mode:c++ -*-
-// Copyright (c) 2011-2013 ARM Limited
+// Copyright (c) 2011-2013,2017 ARM Limited
// All rights reserved
//
// The license below extends only to copyright in the software and shall
execBase = 'StoreEx64'
def __init__(self, *args, **kargs):
super(StoreEx64, self).__init__(*args, **kargs)
- self.codeBlobs["postacc_code"] = "XResult = !writeResult;"
+ self.codeBlobs["postacc_code"] = \
+ "XResult = !writeResult; SevMailbox = 1; LLSCLock = 0;"
def buildStores64(mnem, NameBase, size, flavor="normal"):
StoreImm64(mnem, NameBase + "_IMM", size, flavor=flavor).emit()
writeback = False
def __init__(self, *args, **kargs):
super(StoreImmDEx64, self).__init__(*args, **kargs)
- self.codeBlobs["postacc_code"] = "XResult = !writeResult;"
+ self.codeBlobs["postacc_code"] = \
+ "XResult = !writeResult; SevMailbox = 1; LLSCLock = 0;"
class StoreRegU64(StoreReg64):
decConstBase = 'LoadStoreRegU64'