I'm exploring your source code. But I want to ask you a question about native methods. In some native static methods in the C code side (or others) , you're used JavaObject *jo = (JavaObject*)*vm->DataStackPointer; and in some native methos you're used JavaObject *jo = (JavaObject*)*vm->DataStackPointer++; clearly for exmaple in lpc2939.c file, for JavaObject *eepromDeleteSection(VM *vm) method you used JavaObject *jo = (JavaObject*)*vm->DataStackPointer++;
but in JavaObject *eepromOpenSection(VM *vm) method you used JavaObject *o, *jo = (JavaObject*)*vm->DataStackPointer; what are the differences between them? in Java side (lLPC2939.java) both static native methods get same size and get same type parameters (String). Can you explain tihs DataStackPointer mathematic clearly with few examples please. Thanks for your interest.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Welcome to Help
Dear sergey_z,
I'm exploring your source code. But I want to ask you a question about native methods. In some native static methods in the C code side (or others) , you're used JavaObject *jo = (JavaObject*)*vm->DataStackPointer; and in some native methos you're used JavaObject *jo = (JavaObject*)*vm->DataStackPointer++; clearly for exmaple in lpc2939.c file, for JavaObject *eepromDeleteSection(VM *vm) method you used JavaObject *jo = (JavaObject*)*vm->DataStackPointer++;
but in JavaObject *eepromOpenSection(VM *vm) method you used JavaObject *o, *jo = (JavaObject*)*vm->DataStackPointer; what are the differences between them? in Java side (lLPC2939.java) both static native methods get same size and get same type parameters (String). Can you explain tihs DataStackPointer mathematic clearly with few examples please. Thanks for your interest.