OLD | NEW |
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 664 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
675 void hlt(); | 675 void hlt(); |
676 void ud2(); | 676 void ud2(); |
677 | 677 |
678 // j(Label) is fully tested. | 678 // j(Label) is fully tested. |
679 void j(BrCond condition, Label *label, bool near = kFarJump); | 679 void j(BrCond condition, Label *label, bool near = kFarJump); |
680 void j(BrCond condition, const ConstantRelocatable *label); // not testable. | 680 void j(BrCond condition, const ConstantRelocatable *label); // not testable. |
681 | 681 |
682 void jmp(GPRRegister reg); | 682 void jmp(GPRRegister reg); |
683 void jmp(Label *label, bool near = kFarJump); | 683 void jmp(Label *label, bool near = kFarJump); |
684 void jmp(const ConstantRelocatable *label); // not testable. | 684 void jmp(const ConstantRelocatable *label); // not testable. |
| 685 void jmp(const Immediate &abs_address); |
685 | 686 |
686 void mfence(); | 687 void mfence(); |
687 | 688 |
688 void lock(); | 689 void lock(); |
689 void cmpxchg(Type Ty, const Address &address, GPRRegister reg, bool Locked); | 690 void cmpxchg(Type Ty, const Address &address, GPRRegister reg, bool Locked); |
690 void cmpxchg8b(const Address &address, bool Locked); | 691 void cmpxchg8b(const Address &address, bool Locked); |
691 void xadd(Type Ty, const Address &address, GPRRegister reg, bool Locked); | 692 void xadd(Type Ty, const Address &address, GPRRegister reg, bool Locked); |
692 void xchg(Type Ty, GPRRegister reg0, GPRRegister reg1); | 693 void xchg(Type Ty, GPRRegister reg0, GPRRegister reg1); |
693 void xchg(Type Ty, const Address &address, GPRRegister reg); | 694 void xchg(Type Ty, const Address &address, GPRRegister reg); |
694 | 695 |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
915 emitUint8(0x66); | 916 emitUint8(0x66); |
916 } | 917 } |
917 | 918 |
918 } // end of namespace X86NAMESPACE | 919 } // end of namespace X86NAMESPACE |
919 | 920 |
920 } // end of namespace Ice | 921 } // end of namespace Ice |
921 | 922 |
922 #include "IceAssemblerX86BaseImpl.h" | 923 #include "IceAssemblerX86BaseImpl.h" |
923 | 924 |
924 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H | 925 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H |
OLD | NEW |