Re: staging is broken (again) with --enable-debugging-features on x86_64
Chris Pickett <[email protected]>
| Newsgroups | gmane.comp.java.vm.sablevm.devel |
|---|---|
| Message-ID | <[email protected]> |
Etienne Gagnon wrote: > Hi Chris, > > Chris Pickett wrote: > >> The problem is that the __clear_cache call is only included if the >> inlined threading engine is used. IMO, the check for >> SABLEVM_INLINED_THREADED_INTERPRETER should be moved outside of >> _svmf_iflush() to wherever _svmf_iflush() is called -- what if >> somebody else besides the inlined engine ever wants to call it? > > > Why would anyone call _svmf_iflush() if the incline engine is not used? > > The goal is for the inline, direct, and switch interpreters to be > increasingly portable, switch being portable in minutes of work. Dealing > with instruction-cache flushing is kind of tricky, and we want to avoid > it in the switch engine. I thought it might be useful elsewhere, at some point, because it's a general-purpose memory operation. The call is already #ifdef'd away in prepare_code.c (see follow-up email) if you're worried about the other interpreters. If you don't want that, then you could simply put a dummy statement that reads from the pword parameter in _svmf_iflush(), to prevent errors about pword not being used. Cheers, Chris