Re: [rvm-research] Inserting Assembly into Jikes
Erik Brangs <[email protected]>
| Newsgroups | gmane.comp.java.jikes.rvm.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, On 28.10.2013 11:43, Jeremy Singer wrote: > public Address fooIP; // IP on end is required for correct code rewriting > > Does this field need an @EntryPoint annotation? You'll see that there are some @Entrypoint annotations on certain sysCallIP fields in BootRecord. These fields are directly accessed by the compilers. For example, the IA32 baseline compiler emits direct calls to SysCalls to implement the bytecodes ldiv and lrem (non-SSE builds also use SysCalls for f2i and d2i). The other SysCalls are not accessed this way. To understand what is happening, take a look at SysCallImpl (which is generated during the build process). The methods annotated with @SysCallNative are the methods that end up getting called. If you're interested in the implementation of SysCalls in the baseline compilers, take a look at the processing of the invokestatic bytecode in TemplateCompilerFramework. The optimizing compiler has a separate Operator for SysCalls. Kind regards, Erik Brangs ------------------------------------------------------------------------------ Android is increasing in popularity, but the open development platform that developers love is also attractive to malware creators. Download this white paper to learn more about secure code signing practices that can help keep Android apps secure. http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk