Re: [rvm-research] How to fix buggy SSA
Lei Zhao <[email protected]>
| Newsgroups | gmane.comp.java.jikes.rvm.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, I need to modify the code in SSA form and get problems. So I poked around and here I made my issue more specific with the hope someone could guess where the problem might be: Observation 1: in opt compiler, if I create a phase where I insert a call to an empty function before every getfield (or putfield, getstatic, putstatic) in SSA form, like the following, I get a crash on some benchmarks. ir.options.SSA = true; new SSATuneUp().perform(ir); // insert "call dummy()" before every getfield in the IR, where dummy() does nothing new LeaveSSA().perform(ir); ir.options.SSA = false; Observation 2: if I insert a fence instead of a function call, everything works fine. Observation 3: if I still insert function calls but in non-SSA form, everything works fine. I used the default SSATuneUp configuration, aka, scalars only. Any idea would be appreciated. Thanks. - Lei On Apr 26, 2013, at 11:02 AM, Erik Brangs wrote: > Hi, > > On 24.04.2013 17:03, Lei Zhao wrote: >> It seems SSA is buggy in the opt compiler. > > Yes, that's why it's disabled by default. > >> I need to have a working >> SSA for my project but unfortunately have no clue where to start fixing >> it. > > I assume that you only need scalar SSA. IIRC the heap-array SSA form is > considered so broken that it would be easier to rewrite it. > >> Could someone familiar with this give me some advice? Thanks. > > If you haven't done so already, you could search the researchers mailing > list archive for information about SSA. There were various threads about > it in the past few months. IIRC David Grove and Ian Rogers answered the > bulk of the questions. > > > Kind regards, > > Erik Brangs > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > _______________________________________________ > Jikesrvm-researchers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr _______________________________________________ Jikesrvm-researchers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers