Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: src/IceTargetLoweringX86BaseImpl.h

Issue 1876413002: Subzero. WASM. Additional progress. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Code review feedback and merging with master Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/IceTargetLoweringX86Base.h ('k') | src/WasmTranslator.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceTargetLoweringX86BaseImpl.h - x86 lowering -*- C++ -*-==// 1 //===- subzero/src/IceTargetLoweringX86BaseImpl.h - x86 lowering -*- C++ -*-==//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 /// 9 ///
10 /// \file 10 /// \file
(...skipping 6078 matching lines...) Expand 10 before | Expand all | Expand 10 after
6089 template <typename TraitsType> 6089 template <typename TraitsType>
6090 void TargetX86Base<TraitsType>::lowerUnreachable( 6090 void TargetX86Base<TraitsType>::lowerUnreachable(
6091 const InstUnreachable * /*Instr*/) { 6091 const InstUnreachable * /*Instr*/) {
6092 _ud2(); 6092 _ud2();
6093 // Add a fake use of esp to make sure esp adjustments after the unreachable 6093 // Add a fake use of esp to make sure esp adjustments after the unreachable
6094 // do not get dead-code eliminated. 6094 // do not get dead-code eliminated.
6095 keepEspLiveAtExit(); 6095 keepEspLiveAtExit();
6096 } 6096 }
6097 6097
6098 template <typename TraitsType> 6098 template <typename TraitsType>
6099 void TargetX86Base<TraitsType>::lowerBreakpoint(
6100 const InstBreakpoint * /*Instr*/) {
6101 _int3();
6102 }
6103
6104 template <typename TraitsType>
6099 void TargetX86Base<TraitsType>::lowerRMW(const InstX86FakeRMW *RMW) { 6105 void TargetX86Base<TraitsType>::lowerRMW(const InstX86FakeRMW *RMW) {
6100 // If the beacon variable's live range does not end in this instruction, then 6106 // If the beacon variable's live range does not end in this instruction, then
6101 // it must end in the modified Store instruction that follows. This means 6107 // it must end in the modified Store instruction that follows. This means
6102 // that the original Store instruction is still there, either because the 6108 // that the original Store instruction is still there, either because the
6103 // value being stored is used beyond the Store instruction, or because dead 6109 // value being stored is used beyond the Store instruction, or because dead
6104 // code elimination did not happen. In either case, we cancel RMW lowering 6110 // code elimination did not happen. In either case, we cancel RMW lowering
6105 // (and the caller deletes the RMW instruction). 6111 // (and the caller deletes the RMW instruction).
6106 if (!RMW->isLastUse(RMW->getBeacon())) 6112 if (!RMW->isLastUse(RMW->getBeacon()))
6107 return; 6113 return;
6108 Operand *Src = RMW->getData(); 6114 Operand *Src = RMW->getData();
(...skipping 1309 matching lines...) Expand 10 before | Expand all | Expand 10 after
7418 emitGlobal(*Var, SectionSuffix); 7424 emitGlobal(*Var, SectionSuffix);
7419 } 7425 }
7420 } 7426 }
7421 } break; 7427 } break;
7422 } 7428 }
7423 } 7429 }
7424 } // end of namespace X86NAMESPACE 7430 } // end of namespace X86NAMESPACE
7425 } // end of namespace Ice 7431 } // end of namespace Ice
7426 7432
7427 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASEIMPL_H 7433 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASEIMPL_H
OLDNEW
« no previous file with comments | « src/IceTargetLoweringX86Base.h ('k') | src/WasmTranslator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698