src/cpu/x86/vm/assembler_x86.hpp

changeset 1077
660978a2a31a
parent 1059
337400e7a5dd
child 1078
c771b7f43bbf
     1.1 --- a/src/cpu/x86/vm/assembler_x86.hpp	Wed Mar 11 14:16:13 2009 -0700
     1.2 +++ b/src/cpu/x86/vm/assembler_x86.hpp	Thu Mar 12 10:37:46 2009 -0700
     1.3 @@ -578,20 +578,25 @@
     1.4  
     1.5    // These are all easily abused and hence protected
     1.6  
     1.7 -  void mov_literal32(Register dst, int32_t imm32, RelocationHolder const& rspec, int format = 0);
     1.8 -
     1.9    // 32BIT ONLY SECTION
    1.10  #ifndef _LP64
    1.11    // Make these disappear in 64bit mode since they would never be correct
    1.12    void cmp_literal32(Register src1, int32_t imm32, RelocationHolder const& rspec);   // 32BIT ONLY
    1.13    void cmp_literal32(Address src1, int32_t imm32, RelocationHolder const& rspec);    // 32BIT ONLY
    1.14  
    1.15 +  void mov_literal32(Register dst, int32_t imm32, RelocationHolder const& rspec);    // 32BIT ONLY
    1.16    void mov_literal32(Address dst, int32_t imm32, RelocationHolder const& rspec);     // 32BIT ONLY
    1.17  
    1.18    void push_literal32(int32_t imm32, RelocationHolder const& rspec);                 // 32BIT ONLY
    1.19  #else
    1.20    // 64BIT ONLY SECTION
    1.21    void mov_literal64(Register dst, intptr_t imm64, RelocationHolder const& rspec);   // 64BIT ONLY
    1.22 +
    1.23 +  void cmp_narrow_oop(Register src1, int32_t imm32, RelocationHolder const& rspec);
    1.24 +  void cmp_narrow_oop(Address src1, int32_t imm32, RelocationHolder const& rspec);
    1.25 +
    1.26 +  void mov_narrow_oop(Register dst, int32_t imm32, RelocationHolder const& rspec);
    1.27 +  void mov_narrow_oop(Address dst, int32_t imm32, RelocationHolder const& rspec);
    1.28  #endif // _LP64
    1.29  
    1.30    // These are unique in that we are ensured by the caller that the 32bit
    1.31 @@ -1647,6 +1652,9 @@
    1.32    void decode_heap_oop_not_null(Register dst, Register src);
    1.33  
    1.34    void set_narrow_oop(Register dst, jobject obj);
    1.35 +  void set_narrow_oop(Address dst, jobject obj);
    1.36 +  void cmp_narrow_oop(Register dst, jobject obj);
    1.37 +  void cmp_narrow_oop(Address dst, jobject obj);
    1.38  
    1.39    // if heap base register is used - reinit it with the correct value
    1.40    void reinit_heapbase();

mercurial