| Index: src/IceInst.cpp
|
| diff --git a/src/IceInst.cpp b/src/IceInst.cpp
|
| index 3327455f21429ee9a374ca5151f83d0a2a224c84..ce5bde0f00d54d151d8b60ac31b72c7de042149c 100644
|
| --- a/src/IceInst.cpp
|
| +++ b/src/IceInst.cpp
|
| @@ -436,6 +436,13 @@ bool InstSwitch::repointEdge(CfgNode *OldNode, CfgNode *NewNode) {
|
| InstUnreachable::InstUnreachable(Cfg *Func)
|
| : InstHighLevel(Func, Inst::Unreachable, 0, nullptr) {}
|
|
|
| +InstBundleLock::InstBundleLock(Cfg *Func, InstBundleLock::Option BundleOption)
|
| + : InstHighLevel(Func, Inst::BundleLock, 0, nullptr),
|
| + BundleOption(BundleOption) {}
|
| +
|
| +InstBundleUnlock::InstBundleUnlock(Cfg *Func)
|
| + : InstHighLevel(Func, Inst::BundleUnlock, 0, nullptr) {}
|
| +
|
| InstFakeDef::InstFakeDef(Cfg *Func, Variable *Dest, Variable *Src)
|
| : InstHighLevel(Func, Inst::FakeDef, Src ? 1 : 0, Dest) {
|
| assert(Dest);
|
| @@ -774,6 +781,48 @@ void InstUnreachable::dump(const Cfg *Func) const {
|
| Str << "unreachable";
|
| }
|
|
|
| +void InstBundleLock::emit(const Cfg *Func) const {
|
| + if (!ALLOW_DUMP)
|
| + return;
|
| + Ostream &Str = Func->getContext()->getStrEmit();
|
| + Str << "\t.bundle_lock";
|
| + switch (BundleOption) {
|
| + case Opt_None:
|
| + break;
|
| + case Opt_AlignToEnd:
|
| + Str << "\talign_to_end";
|
| + break;
|
| + }
|
| +}
|
| +
|
| +void InstBundleLock::dump(const Cfg *Func) const {
|
| + if (!ALLOW_DUMP)
|
| + return;
|
| + Ostream &Str = Func->getContext()->getStrDump();
|
| + Str << "bundle_lock";
|
| + switch (BundleOption) {
|
| + case Opt_None:
|
| + break;
|
| + case Opt_AlignToEnd:
|
| + Str << " align_to_end";
|
| + break;
|
| + }
|
| +}
|
| +
|
| +void InstBundleUnlock::emit(const Cfg *Func) const {
|
| + if (!ALLOW_DUMP)
|
| + return;
|
| + Ostream &Str = Func->getContext()->getStrEmit();
|
| + Str << "\t.bundle_unlock";
|
| +}
|
| +
|
| +void InstBundleUnlock::dump(const Cfg *Func) const {
|
| + if (!ALLOW_DUMP)
|
| + return;
|
| + Ostream &Str = Func->getContext()->getStrDump();
|
| + Str << "bundle_unlock";
|
| +}
|
| +
|
| void InstFakeDef::emit(const Cfg *Func) const {
|
| if (!ALLOW_DUMP)
|
| return;
|
|
|