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

Side by Side Diff: src/IceTargetLoweringX86BaseImpl.h

Issue 1449523002: Eliminate stack adjustment for float-returning functions (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Code review comments addressed. Created 5 years, 1 month 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') | no next file » | 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 5181 matching lines...) Expand 10 before | Expand all | Expand 10 after
5192 // Skip over the instruction. 5192 // Skip over the instruction.
5193 Context.advanceNext(); 5193 Context.advanceNext();
5194 } 5194 }
5195 } 5195 }
5196 } 5196 }
5197 5197
5198 template <class Machine> 5198 template <class Machine>
5199 void TargetX86Base<Machine>::lowerUnreachable( 5199 void TargetX86Base<Machine>::lowerUnreachable(
5200 const InstUnreachable * /*Inst*/) { 5200 const InstUnreachable * /*Inst*/) {
5201 _ud2(); 5201 _ud2();
5202 // Add a fake use of esp to make sure esp adjustments after the unreachable
5203 // do not get dead-code eliminated.
5204 keepEspLiveAtExit();
5202 } 5205 }
5203 5206
5204 template <class Machine> 5207 template <class Machine>
5205 void TargetX86Base<Machine>::lowerRMW( 5208 void TargetX86Base<Machine>::lowerRMW(
5206 const typename Traits::Insts::FakeRMW *RMW) { 5209 const typename Traits::Insts::FakeRMW *RMW) {
5207 // If the beacon variable's live range does not end in this instruction, then 5210 // If the beacon variable's live range does not end in this instruction, then
5208 // it must end in the modified Store instruction that follows. This means 5211 // it must end in the modified Store instruction that follows. This means
5209 // that the original Store instruction is still there, either because the 5212 // that the original Store instruction is still there, either because the
5210 // value being stored is used beyond the Store instruction, or because dead 5213 // value being stored is used beyond the Store instruction, or because dead
5211 // code elimination did not happen. In either case, we cancel RMW lowering 5214 // code elimination did not happen. In either case, we cancel RMW lowering
(...skipping 807 matching lines...) Expand 10 before | Expand all | Expand 10 after
6019 } 6022 }
6020 // the offset is not eligible for blinding or pooling, return the original 6023 // the offset is not eligible for blinding or pooling, return the original
6021 // mem operand 6024 // mem operand
6022 return MemOperand; 6025 return MemOperand;
6023 } 6026 }
6024 6027
6025 } // end of namespace X86Internal 6028 } // end of namespace X86Internal
6026 } // end of namespace Ice 6029 } // end of namespace Ice
6027 6030
6028 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASEIMPL_H 6031 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASEIMPL_H
OLDNEW
« no previous file with comments | « src/IceTargetLoweringX86Base.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698