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

Side by Side Diff: src/IceAssemblerX86Base.h

Issue 1616103002: Subzero. X8664. Enables RIP-based addressing mode. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: make presubmit happy. Created 4 years, 11 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
OLDNEW
1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- C++ -*---===// 1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- C++ -*---===//
2 // 2 //
3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
4 // for details. All rights reserved. Use of this source code is governed by a 4 // for details. All rights reserved. Use of this source code is governed by a
5 // BSD-style license that can be found in the LICENSE file. 5 // BSD-style license that can be found in the LICENSE file.
6 // 6 //
7 // Modified by the Subzero authors. 7 // Modified by the Subzero authors.
8 // 8 //
9 //===----------------------------------------------------------------------===// 9 //===----------------------------------------------------------------------===//
10 // 10 //
(...skipping 711 matching lines...) Expand 10 before | Expand all | Expand 10 after
722 static constexpr GPRRegister RexRegIrrelevant = 722 static constexpr GPRRegister RexRegIrrelevant =
723 Traits::GPRRegister::Encoded_Reg_eax; 723 Traits::GPRRegister::Encoded_Reg_eax;
724 724
725 inline void emitInt16(int16_t value); 725 inline void emitInt16(int16_t value);
726 inline void emitInt32(int32_t value); 726 inline void emitInt32(int32_t value);
727 inline void emitRegisterOperand(int rm, int reg); 727 inline void emitRegisterOperand(int rm, int reg);
728 template <typename RegType, typename RmType> 728 template <typename RegType, typename RmType>
729 inline void emitXmmRegisterOperand(RegType reg, RmType rm); 729 inline void emitXmmRegisterOperand(RegType reg, RmType rm);
730 inline void emitOperandSizeOverride(); 730 inline void emitOperandSizeOverride();
731 731
732 void emitOperand(int rm, const Operand &operand); 732 void emitOperand(int rm, const Operand &operand, RelocOffsetT Addend = 0);
733 void emitImmediate(Type ty, const Immediate &imm); 733 void emitImmediate(Type ty, const Immediate &imm);
734 void emitComplexI8(int rm, const Operand &operand, 734 void emitComplexI8(int rm, const Operand &operand,
735 const Immediate &immediate); 735 const Immediate &immediate);
736 void emitComplex(Type Ty, int rm, const Operand &operand, 736 void emitComplex(Type Ty, int rm, const Operand &operand,
737 const Immediate &immediate); 737 const Immediate &immediate);
738 void emitLabel(Label *label, intptr_t instruction_size); 738 void emitLabel(Label *label, intptr_t instruction_size);
739 void emitLabelLink(Label *label); 739 void emitLabelLink(Label *label);
740 void emitNearLabelLink(Label *label); 740 void emitNearLabelLink(Label *label);
741 741
742 void emitGenericShift(int rm, Type Ty, GPRRegister reg, const Immediate &imm); 742 void emitGenericShift(int rm, Type Ty, GPRRegister reg, const Immediate &imm);
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
915 emitUint8(0x66); 915 emitUint8(0x66);
916 } 916 }
917 917
918 } // end of namespace X86NAMESPACE 918 } // end of namespace X86NAMESPACE
919 919
920 } // end of namespace Ice 920 } // end of namespace Ice
921 921
922 #include "IceAssemblerX86BaseImpl.h" 922 #include "IceAssemblerX86BaseImpl.h"
923 923
924 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H 924 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698