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

Side by Side Diff: src/IceTargetLoweringX86Base.h

Issue 2124973005: Selectively invert ICMP operands for better address optimization (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Address Comments Created 4 years, 5 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/IceTargetLoweringX8664.cpp ('k') | src/IceTargetLoweringX86BaseImpl.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/IceTargetLoweringX86Base.h - x86 lowering ----*- C++ -*-===// 1 //===- subzero/src/IceTargetLoweringX86Base.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 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 /// Legalizes Addr w.r.t. SandboxingType. The exact type of legalization 282 /// Legalizes Addr w.r.t. SandboxingType. The exact type of legalization
283 /// varies for different <Target, SandboxingType> tuples. 283 /// varies for different <Target, SandboxingType> tuples.
284 bool legalizeOptAddrForSandbox(OptAddr *Addr) { 284 bool legalizeOptAddrForSandbox(OptAddr *Addr) {
285 return dispatchToConcrete( 285 return dispatchToConcrete(
286 &Traits::ConcreteTarget::legalizeOptAddrForSandbox, std::move(Addr)); 286 &Traits::ConcreteTarget::legalizeOptAddrForSandbox, std::move(Addr));
287 } 287 }
288 // Builds information for a canonical address expresion: 288 // Builds information for a canonical address expresion:
289 // <Relocatable + Offset>(Base, Index, Shift) 289 // <Relocatable + Offset>(Base, Index, Shift)
290 X86OperandMem *computeAddressOpt(const Inst *Instr, Type MemType, 290 X86OperandMem *computeAddressOpt(const Inst *Instr, Type MemType,
291 Operand *Addr); 291 Operand *Addr);
292 void doAddressOptOther() override;
292 void doAddressOptLoad() override; 293 void doAddressOptLoad() override;
293 void doAddressOptStore() override; 294 void doAddressOptStore() override;
294 void doMockBoundsCheck(Operand *Opnd) override; 295 void doMockBoundsCheck(Operand *Opnd) override;
295 void randomlyInsertNop(float Probability, 296 void randomlyInsertNop(float Probability,
296 RandomNumberGenerator &RNG) override; 297 RandomNumberGenerator &RNG) override;
297 298
298 /// Naive lowering of cmpxchg. 299 /// Naive lowering of cmpxchg.
299 void lowerAtomicCmpxchg(Variable *DestPrev, Operand *Ptr, Operand *Expected, 300 void lowerAtomicCmpxchg(Variable *DestPrev, Operand *Ptr, Operand *Expected,
300 Operand *Desired); 301 Operand *Desired);
301 /// Attempt a more optimized lowering of cmpxchg. Returns true if optimized. 302 /// Attempt a more optimized lowering of cmpxchg. Returns true if optimized.
(...skipping 866 matching lines...) Expand 10 before | Expand all | Expand 10 after
1168 1169
1169 explicit TargetHeaderX86(GlobalContext *Ctx) : TargetHeaderLowering(Ctx) {} 1170 explicit TargetHeaderX86(GlobalContext *Ctx) : TargetHeaderLowering(Ctx) {}
1170 }; 1171 };
1171 1172
1172 } // end of namespace X86NAMESPACE 1173 } // end of namespace X86NAMESPACE
1173 } // end of namespace Ice 1174 } // end of namespace Ice
1174 1175
1175 #include "IceTargetLoweringX86BaseImpl.h" 1176 #include "IceTargetLoweringX86BaseImpl.h"
1176 1177
1177 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H 1178 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H
OLDNEW
« no previous file with comments | « src/IceTargetLoweringX8664.cpp ('k') | src/IceTargetLoweringX86BaseImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698