src/cpu/x86/vm/assembler_x86.hpp

changeset 1059
337400e7a5dd
parent 1058
9adddb8c0fc8
child 1077
660978a2a31a
     1.1 --- a/src/cpu/x86/vm/assembler_x86.hpp	Fri Mar 06 21:36:50 2009 -0800
     1.2 +++ b/src/cpu/x86/vm/assembler_x86.hpp	Mon Mar 09 03:17:11 2009 -0700
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright 1997-2008 Sun Microsystems, Inc.  All Rights Reserved.
     1.6 + * Copyright 1997-2009 Sun Microsystems, Inc.  All Rights Reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -278,7 +278,7 @@
    1.11    // Convert the raw encoding form into the form expected by the constructor for
    1.12    // Address.  An index of 4 (rsp) corresponds to having no index, so convert
    1.13    // that to noreg for the Address constructor.
    1.14 -  static Address make_raw(int base, int index, int scale, int disp);
    1.15 +  static Address make_raw(int base, int index, int scale, int disp, bool disp_is_oop);
    1.16  
    1.17    static Address make_array(ArrayAddress);
    1.18  
    1.19 @@ -1138,6 +1138,9 @@
    1.20    void movsbl(Register dst, Register src);
    1.21  
    1.22  #ifdef _LP64
    1.23 +  void movsbq(Register dst, Address src);
    1.24 +  void movsbq(Register dst, Register src);
    1.25 +
    1.26    // Move signed 32bit immediate to 64bit extending sign
    1.27    void movslq(Address dst, int32_t imm64);
    1.28    void movslq(Register dst, int32_t imm64);
    1.29 @@ -1150,6 +1153,11 @@
    1.30    void movswl(Register dst, Address src);
    1.31    void movswl(Register dst, Register src);
    1.32  
    1.33 +#ifdef _LP64
    1.34 +  void movswq(Register dst, Address src);
    1.35 +  void movswq(Register dst, Register src);
    1.36 +#endif
    1.37 +
    1.38    void movw(Address dst, int imm16);
    1.39    void movw(Register dst, Address src);
    1.40    void movw(Address dst, Register src);
    1.41 @@ -1157,9 +1165,19 @@
    1.42    void movzbl(Register dst, Address src);
    1.43    void movzbl(Register dst, Register src);
    1.44  
    1.45 +#ifdef _LP64
    1.46 +  void movzbq(Register dst, Address src);
    1.47 +  void movzbq(Register dst, Register src);
    1.48 +#endif
    1.49 +
    1.50    void movzwl(Register dst, Address src);
    1.51    void movzwl(Register dst, Register src);
    1.52  
    1.53 +#ifdef _LP64
    1.54 +  void movzwq(Register dst, Address src);
    1.55 +  void movzwq(Register dst, Register src);
    1.56 +#endif
    1.57 +
    1.58    void mull(Address src);
    1.59    void mull(Register src);
    1.60  

mercurial