OP_CONST_STRING.cpp revision cd8f5e701547739f241594b43e9470c92d98e9cf
10dec431f187915c3e42f1c2afd2771e0bc91b14cEric FischerHANDLE_OPCODE(OP_CONST_STRING /*vAA, string@BBBB*/)
20dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer    {
30dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        StringObject* strObj;
40dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer
50dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        vdst = INST_AA(inst);
60dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        ref = FETCH(1);
70dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        ILOGV("|const-string v%d string@0x%04x", vdst, ref);
80dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        strObj = dvmDexGetResolvedString(methodClassDex, ref);
90dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        if (strObj == NULL) {
100dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer            EXPORT_PC();
110dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer            strObj = dvmResolveString(curMethod->clazz, ref);
120dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer            if (strObj == NULL)
130dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer                GOTO_exceptionThrown();
140dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        }
150dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer        SET_REGISTER(vdst, (u4) strObj);
160dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer    }
170dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer    FINISH(2);
180dec431f187915c3e42f1c2afd2771e0bc91b14cEric FischerOP_END
190dec431f187915c3e42f1c2afd2771e0bc91b14cEric Fischer