OLD | NEW |
1 //===- subzero/src/assembler_ia32.h - Assembler for x86-32 ------*- C++ -*-===// | 1 //===- subzero/src/assembler_ia32.h - Assembler for x86-32 ------*- C++ -*-===// |
2 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 2 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
3 // for details. All rights reserved. Use of this source code is governed by a | 3 // for details. All rights reserved. Use of this source code is governed by a |
4 // BSD-style license that can be found in the LICENSE file. | 4 // BSD-style license that can be found in the LICENSE file. |
5 // | 5 // |
6 // Modified by the Subzero authors. | 6 // Modified by the Subzero authors. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 // The Subzero Code Generator | 10 // The Subzero Code Generator |
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
468 TypedEmitRegRegImm RegRegImm; | 468 TypedEmitRegRegImm RegRegImm; |
469 TypedEmitRegAddrImm RegAddrImm; | 469 TypedEmitRegAddrImm RegAddrImm; |
470 }; | 470 }; |
471 | 471 |
472 /* | 472 /* |
473 * Emit Machine Instructions. | 473 * Emit Machine Instructions. |
474 */ | 474 */ |
475 void call(GPRRegister reg); | 475 void call(GPRRegister reg); |
476 void call(const Address &address); | 476 void call(const Address &address); |
477 void call(const ConstantRelocatable *label); | 477 void call(const ConstantRelocatable *label); |
| 478 void call(const Immediate &abs_address); |
478 | 479 |
479 static const intptr_t kCallExternalLabelSize = 5; | 480 static const intptr_t kCallExternalLabelSize = 5; |
480 | 481 |
481 void pushl(GPRRegister reg); | 482 void pushl(GPRRegister reg); |
482 | 483 |
483 void popl(GPRRegister reg); | 484 void popl(GPRRegister reg); |
484 void popl(const Address &address); | 485 void popl(const Address &address); |
485 | 486 |
486 void pushal(); | 487 void pushal(); |
487 void popal(); | 488 void popal(); |
(...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
872 inline void AssemblerX86::EmitFixup(AssemblerFixup *fixup) { | 873 inline void AssemblerX86::EmitFixup(AssemblerFixup *fixup) { |
873 buffer_.EmitFixup(fixup); | 874 buffer_.EmitFixup(fixup); |
874 } | 875 } |
875 | 876 |
876 inline void AssemblerX86::EmitOperandSizeOverride() { EmitUint8(0x66); } | 877 inline void AssemblerX86::EmitOperandSizeOverride() { EmitUint8(0x66); } |
877 | 878 |
878 } // end of namespace x86 | 879 } // end of namespace x86 |
879 } // end of namespace Ice | 880 } // end of namespace Ice |
880 | 881 |
881 #endif // SUBZERO_SRC_ASSEMBLER_IA32_H_ | 882 #endif // SUBZERO_SRC_ASSEMBLER_IA32_H_ |
OLD | NEW |