[Webkit-unassigned] [Bug 100321] Refactor LLInt64 to distinguish the pointer operations from the 64-bit integer operations

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 24 20:58:24 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=100321





--- Comment #4 from Filip Pizlo <fpizlo at apple.com>  2012-10-24 20:59:31 PST ---
(In reply to comment #3)
> (In reply to comment #2)
> > 
> > I think you should fix the X86_INSTRUCTIONS part but otherwise I like where this is going.
> > 
> > > Source/JavaScriptCore/offlineasm/instructions.rb:216
> > > +X86_64_INSTRUCTIONS =
> > 
> > The X86_INSTRUCTIONS, and ARMv7_INSTRUCTIONS are used for instructions that are truly artifacts of that architecture.
> > 
> > The cloop might be built in JSVALUE64 mode on non-X86 64-bit architectures.  Like, I dunno, PowerPC maybe.  I don't know if anyone does that, but it would be really weird to name these X86_64_INSTRUCTIONS and then have a PowerPC 64-bit port that uses them.
> > 
> Thanks for the comments. Will fix it.
> 
> > I suggest putting these instructions into the main instruction list.
> > 
> > > Source/JavaScriptCore/offlineasm/x86.rb:55
> > > -        "*#{x86Operand(kind)}"
> > > +        "*#{x86Operand(:quad)}"
> > 
> > Is that right?  Shouldn't this be :ptr?
> 
> It won't cause errors as this code only runs in X64 backend. I would say that this is a necessary change for x32 support. (partial registers are not allowed to be call/jump operands on x32. Maybe I can revert this change and put it in later x32 specific patch, or keep it here as it doesn't do harm, what do you think?)

Ah - right!  That makes sense.  No, don't worry about it.  I think you can keep this.  But maybe you can put a comment that explains what you just said? :-)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list