??? 03/30/08 18:30 Read: times |
#152719 - what do you mean by "come out"? Responding to: ???'s previous message |
You can "throw away" the return address from stack by performing
two dummy POPs, for example: [... some program ...] call Subroutine [... some other program, we want to bypass for some reason ...] Label: [... rest of program ...] ;--------------------------------------- Subroutine: [... some content of subroutine ...] [... code jumping to SubroutineX1, if something happens ...] ret SubroutineX1: pop acc ;throw away return address and jump to Label directly pop acc jmp Label I just don't know if this answers your question; and also, what would be the purpose of such step. If you'd tell us why do you want to do this, maybe we can suggest you some better options. JW |
Topic | Author | Date |
call routine problem | 01/01/70 00:00 | |
Yes, but... | 01/01/70 00:00 | |
call routine | 01/01/70 00:00 | |
what do you mean by "come out"? | 01/01/70 00:00 | |
call routine | 01/01/70 00:00 | |
Does not ignore RET but... | 01/01/70 00:00 | |
Good implementation | 01/01/70 00:00 | |
one of the reasons might be... | 01/01/70 00:00 | |
call routine | 01/01/70 00:00 | |
please explain... | 01/01/70 00:00 | |
Two things need explaining | 01/01/70 00:00 | |
Processor doesn't just ignore instructions! | 01/01/70 00:00 | |
I guess ... | 01/01/70 00:00 | |
call routine | 01/01/70 00:00 | |
use sjmp ljmp ajmp![]() | 01/01/70 00:00 |