src/cpu/x86/vm/interpreterRT_x86_64.cpp

changeset 1861
2338d41fbd81
parent 1279
bd02caa94611
child 1907
c18cbe5936b8
     1.1 --- a/src/cpu/x86/vm/interpreterRT_x86_64.cpp	Fri Apr 30 04:27:25 2010 -0700
     1.2 +++ b/src/cpu/x86/vm/interpreterRT_x86_64.cpp	Fri Apr 30 08:37:24 2010 -0700
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright 2003-2009 Sun Microsystems, Inc.  All Rights Reserved.
     1.6 + * Copyright 2003-2010 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 @@ -293,18 +293,10 @@
    1.11    intptr_t* _fp_identifiers;
    1.12    unsigned int _num_args;
    1.13  
    1.14 -#ifdef ASSERT
    1.15 -  void verify_tag(frame::Tag t) {
    1.16 -    assert(!TaggedStackInterpreter ||
    1.17 -           *(intptr_t*)(_from+Interpreter::local_tag_offset_in_bytes(0)) == t, "wrong tag");
    1.18 -  }
    1.19 -#endif // ASSERT
    1.20 -
    1.21    virtual void pass_int()
    1.22    {
    1.23      jint from_obj = *(jint *)(_from+Interpreter::local_offset_in_bytes(0));
    1.24 -    debug_only(verify_tag(frame::TagValue));
    1.25 -    _from -= Interpreter::stackElementSize();
    1.26 +    _from -= Interpreter::stackElementSize;
    1.27  
    1.28      if (_num_args < Argument::n_int_register_parameters_c-1) {
    1.29        *_reg_args++ = from_obj;
    1.30 @@ -317,8 +309,7 @@
    1.31    virtual void pass_long()
    1.32    {
    1.33      intptr_t from_obj = *(intptr_t*)(_from+Interpreter::local_offset_in_bytes(1));
    1.34 -    debug_only(verify_tag(frame::TagValue));
    1.35 -    _from -= 2*Interpreter::stackElementSize();
    1.36 +    _from -= 2*Interpreter::stackElementSize;
    1.37  
    1.38      if (_num_args < Argument::n_int_register_parameters_c-1) {
    1.39        *_reg_args++ = from_obj;
    1.40 @@ -331,8 +322,7 @@
    1.41    virtual void pass_object()
    1.42    {
    1.43      intptr_t *from_addr = (intptr_t*)(_from + Interpreter::local_offset_in_bytes(0));
    1.44 -    debug_only(verify_tag(frame::TagReference));
    1.45 -    _from -= Interpreter::stackElementSize();
    1.46 +    _from -= Interpreter::stackElementSize;
    1.47      if (_num_args < Argument::n_int_register_parameters_c-1) {
    1.48        *_reg_args++ = (*from_addr == 0) ? NULL : (intptr_t) from_addr;
    1.49        _num_args++;
    1.50 @@ -344,8 +334,7 @@
    1.51    virtual void pass_float()
    1.52    {
    1.53      jint from_obj = *(jint *)(_from+Interpreter::local_offset_in_bytes(0));
    1.54 -    debug_only(verify_tag(frame::TagValue));
    1.55 -    _from -= Interpreter::stackElementSize();
    1.56 +    _from -= Interpreter::stackElementSize;
    1.57  
    1.58      if (_num_args < Argument::n_float_register_parameters_c-1) {
    1.59        *_reg_args++ = from_obj;
    1.60 @@ -359,8 +348,7 @@
    1.61    virtual void pass_double()
    1.62    {
    1.63      intptr_t from_obj = *(intptr_t*)(_from+Interpreter::local_offset_in_bytes(1));
    1.64 -    debug_only(verify_tag(frame::TagValue));
    1.65 -    _from -= 2*Interpreter::stackElementSize();
    1.66 +    _from -= 2*Interpreter::stackElementSize;
    1.67  
    1.68      if (_num_args < Argument::n_float_register_parameters_c-1) {
    1.69        *_reg_args++ = from_obj;
    1.70 @@ -397,18 +385,10 @@
    1.71    unsigned int _num_int_args;
    1.72    unsigned int _num_fp_args;
    1.73  
    1.74 -#ifdef ASSERT
    1.75 -  void verify_tag(frame::Tag t) {
    1.76 -    assert(!TaggedStackInterpreter ||
    1.77 -           *(intptr_t*)(_from+Interpreter::local_tag_offset_in_bytes(0)) == t, "wrong tag");
    1.78 -  }
    1.79 -#endif // ASSERT
    1.80 -
    1.81    virtual void pass_int()
    1.82    {
    1.83      jint from_obj = *(jint *)(_from+Interpreter::local_offset_in_bytes(0));
    1.84 -    debug_only(verify_tag(frame::TagValue));
    1.85 -    _from -= Interpreter::stackElementSize();
    1.86 +    _from -= Interpreter::stackElementSize;
    1.87  
    1.88      if (_num_int_args < Argument::n_int_register_parameters_c-1) {
    1.89        *_int_args++ = from_obj;
    1.90 @@ -421,8 +401,7 @@
    1.91    virtual void pass_long()
    1.92    {
    1.93      intptr_t from_obj = *(intptr_t*)(_from+Interpreter::local_offset_in_bytes(1));
    1.94 -    debug_only(verify_tag(frame::TagValue));
    1.95 -    _from -= 2*Interpreter::stackElementSize();
    1.96 +    _from -= 2*Interpreter::stackElementSize;
    1.97  
    1.98      if (_num_int_args < Argument::n_int_register_parameters_c-1) {
    1.99        *_int_args++ = from_obj;
   1.100 @@ -435,8 +414,7 @@
   1.101    virtual void pass_object()
   1.102    {
   1.103      intptr_t *from_addr = (intptr_t*)(_from + Interpreter::local_offset_in_bytes(0));
   1.104 -    debug_only(verify_tag(frame::TagReference));
   1.105 -    _from -= Interpreter::stackElementSize();
   1.106 +    _from -= Interpreter::stackElementSize;
   1.107  
   1.108      if (_num_int_args < Argument::n_int_register_parameters_c-1) {
   1.109        *_int_args++ = (*from_addr == 0) ? NULL : (intptr_t)from_addr;
   1.110 @@ -449,8 +427,7 @@
   1.111    virtual void pass_float()
   1.112    {
   1.113      jint from_obj = *(jint*)(_from+Interpreter::local_offset_in_bytes(0));
   1.114 -    debug_only(verify_tag(frame::TagValue));
   1.115 -    _from -= Interpreter::stackElementSize();
   1.116 +    _from -= Interpreter::stackElementSize;
   1.117  
   1.118      if (_num_fp_args < Argument::n_float_register_parameters_c) {
   1.119        *_fp_args++ = from_obj;
   1.120 @@ -463,7 +440,7 @@
   1.121    virtual void pass_double()
   1.122    {
   1.123      intptr_t from_obj = *(intptr_t*)(_from+Interpreter::local_offset_in_bytes(1));
   1.124 -    _from -= 2*Interpreter::stackElementSize();
   1.125 +    _from -= 2*Interpreter::stackElementSize;
   1.126  
   1.127      if (_num_fp_args < Argument::n_float_register_parameters_c) {
   1.128        *_fp_args++ = from_obj;

mercurial