Changeset 331 for trunk/nom/src/nombuildnomobj.c
- Timestamp:
- May 2, 2008, 8:13:05 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nom/src/nombuildnomobj.c
r326 r331 48 48 #include <nomtk.h> 49 49 #include <nomobj.h> 50 #include <thunk.h> 50 51 51 52 /********************************************************/ … … 60 61 extern PNOM_ENV pGlobalNomEnv; 61 62 63 64 /********************************************************/ 65 66 62 67 /* 63 Thunking code to get the instance var address from an object pointer pushed 64 on the stack. The following translates into this assembler code: 65 66 MOV EAX,DWORD PTR [ESP+4] ;Move object ptr into EAX 67 ADD EAX, +4 68 RET 69 */ 70 71 static gulong thunk[]={0x0424448b, 0x00000405, 0x0000c300}; 72 73 /* 74 MOV ECX,DWORD PTR [ESP+4] : move object pointer from stack in ECX 75 MOV EDX,DWORD PTR [ECX] : move [ECX] in EDX -> mtab in EDX 76 JMP DWORD PTR [EDX+0ACh] : JMP to address pointing to by EDX+0ACh 77 */ 78 static gulong mThunkCode[]={0x04244c8b, 0xff00518b, 0x0000aca2 , 0x16000000}; 79 80 /********************************************************/ 81 82 83 /* 84 Create the SOMClassPriv structure *only* for SOMObject and fill it with info 68 Create the NOMClassPriv structure *only* for NOMObject and fill it with info 85 69 from the sci. 86 70
Note:
See TracChangeset
for help on using the changeset viewer.