val = (String)VM_Statics.getSlotContentsAsObject(slot);
val = (String)VM_Statics.getSlotContentsAsObject(offset);
  public static OPT_StringConstantOperand getStringFromConstantPool (VM_Class klass, int index) {    int slot = klass.getLiteralOffset(index) >> LOG_BYTES_IN_INT;    String val;    if (VM.runningVM) {      val = (String)VM_Statics.getSlotContentsAsObject(slot);    } else {      // Sigh. What we really want to do is acquire the       // String object from the class constant pool.      // But, we aren't set up to do that.  The following      // isn't strictly correct, but is closer than the completely bogus      // thing we were doing before.       // TODO: Fix this to do the right thing.       //       This will be wrong if someone is comparing string constants      //       using ==, != since we're very unlikely to get the aliasing right.      //       Then again, if you are using ==, != with strings and one of them      //       isn't <null>, perhaps you deserve what you get.      // This is defect 2838.      val = ("BootImageStringConstant "+slot).intern();    }    return new OPT_StringConstantOperand(val, slot);  }