Bug 122629

Summary: FTL shouldn't pass i1's into llvm.webkit.stackmap's
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: atrick, barraclough, ggaren, mark.lam, mhahnenberg, msaboff, nrotem, oliver, sam
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
the patch sam: review+

Filip Pizlo
Reported 2013-10-10 18:50:28 PDT
Patch forthcoming. <rdar://problem/15203037>
Attachments
the patch (1.45 KB, patch)
2013-10-10 18:52 PDT, Filip Pizlo
sam: review+
Filip Pizlo
Comment 1 2013-10-10 18:52:28 PDT
Created attachment 213953 [details] the patch
Sam Weinig
Comment 2 2013-10-10 19:38:10 PDT
Comment on attachment 213953 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=213953&action=review > Source/JavaScriptCore/ChangeLog:10 > + FTL shouldn't pass i1's into llvm.webkit.stackmap's > + https://bugs.webkit.org/show_bug.cgi?id=122629 > + <rdar://problem/15203037> > + > + Reviewed by NOBODY (OOPS!). > + > + * ftl/FTLLowerDFGToLLVM.cpp: > + (JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode): Why?
Nadav Rotem
Comment 3 2013-10-10 23:22:16 PDT
i1 is not a legal type because it does not fit into a register on most targets. LLVM can't "legalize" stack maps because we did not add support for stack maps with illegal types. r=me.
Filip Pizlo
Comment 4 2013-10-10 23:31:51 PDT
(In reply to comment #3) > i1 is not a legal type because it does not fit into a register on most targets. LLVM can't "legalize" stack maps because we did not add support for stack maps with illegal types. r=me. What Nadav said. I'll put this into the comment. Basically, the stackmap support that LLVM provides us with requires us to legalize types ourselves. Which is fine. I had just forgotten that rule and accidentally let i1's slip through.
Filip Pizlo
Comment 5 2013-10-10 23:36:43 PDT
Note You need to log in before you can comment on or make changes to this bug.