On 4/18/07, Alexey Varlamov <[EMAIL PROTECTED]> wrote:
2007/4/18, Mikhail Fursov <[EMAIL PROTECTED]>: > Nathan, > I checked the patch and it looks OK except a one issue. > > I do not really like that we have new p5.emconf in codebase and propose the > following improvement: > 1) add p5 pass to all Jitrino.OPT codegen aliases in every emconf we have. > (I can update the patch if agreed) I suppose you meant all ia32 configs :). This is neccesary step to CPUID autodetection, so it a must actually. > > 2) a. After the commit: Make it turned off by default and use additional > cmd-line -XX:jit.arg.codegen.p5=on when run on PC without SSE2 > b. Start discussion: Use CPUID to detect if SSE2 is available and make > JIT turn this pass on automatically if needed. > > We can implement CPUID check for SSE2 in JIT only (a couple of lines of > assembly for Linux and Windows) > The question is: would it be better if VM provides such service for every > client? E.g. cpuid_is_sse2_supported()-like methods. I'm in serious doubt that it is needed. Too IA-centric, it would have little sense in general case. So doing it right in Jit is the right thing IMO.
Why do you think this is not needed? We might have several JITs or interpreter that can use and extended set of instructions. It would be good to keep these checks in one place in VM. Thanks, Pavel
> > On 4/18/07, Nathan Beyer <[EMAIL PROTECTED]> wrote: > > > > Would anyone else like to review this patch? It's somewhat > > significant. I've tested it on a P4/WinXP and DRLVM works without any > > noticeable regressions. I've done some initial tests on a Quad > > P3/Ubuntu and I can now run a simple Hello World with the default JIT, > > which is a huge step. > > > > If no one has any issues, I'm going to commit this patch. > > > > -Nathan > > > > ---------- Forwarded message ---------- > > From: Nathan Beyer (JIRA) <[EMAIL PROTECTED]> > > Date: Apr 18, 2007 12:49 AM > > Subject: [jira] Commented: (HARMONY-3246) [drlvm][jit][opt] Jitted > > code can not be executed on non-SSE2 platforms > > To: [EMAIL PROTECTED] > > > > > > > > [ > > https://issues.apache.org/jira/browse/HARMONY-3246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12489614 > > ] > > > > Nathan Beyer commented on HARMONY-3246: > > --------------------------------------- > > > > I've test this on a Linux P3 and it seems to work. I'm now able to run > > a simple hello world. Additionally, everything seems to work as it did > > on a P4/WinXP. > > > > Let's see if we can get a few more people to review the code. > > > > > [drlvm][jit][opt] Jitted code can not be executed on non-SSE2 platforms > > > ----------------------------------------------------------------------- > > > > > > Key: HARMONY-3246 > > > URL: https://issues.apache.org/jira/browse/HARMONY-3246 > > > Project: Harmony > > > Issue Type: Improvement > > > Components: DRLVM > > > Reporter: Nikolay Sidelnikov > > > Assigned To: Nathan Beyer > > > Attachments: p5_fixed_commented.patch > > > > > > > > > Jitrino generates code with SSE and SSE2 instructions which can not be > > executed on processors older than Pentium 4. > > > > -- > > This message is automatically generated by JIRA. > > - > > You can reply to this email to add a comment to the issue online. > > > > > > -- > Mikhail Fursov >
