Bug 22838

Summary: Remove dependency on the bytecode Instruction buffer in Interpreter::throwException
Product: WebKit Reporter: Sam Weinig <sam>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: zwarich
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.5   
Attachments:
Description Flags
patch ggaren: review+

Description Sam Weinig 2008-12-12 19:12:52 PST
Interpreter:: throwException is one of the few remaining places where we require access to the bytecode Instruction buffer from JIT code.  In order to purge the buffer after native code generation, we need to fix this.

In order to accomplish this, we can probably store the required data in the CodeBlock when we recompile with profiling hooks.
Comment 1 Sam Weinig 2008-12-12 19:13:24 PST
Related to <rdar://problem/6428342>
Comment 2 Sam Weinig 2008-12-16 22:08:50 PST
Created attachment 26086 [details]
patch
Comment 3 Geoffrey Garen 2008-12-16 22:26:52 PST
Comment on attachment 26086 [details]
patch

+#if ENABLE(JIT)

The #if is backwards.

Next person who copies binary chop code instead of reusing gets a smack.
Comment 4 Sam Weinig 2008-12-16 22:30:32 PST
Fixed in r39354.
Comment 5 Darin Adler 2008-12-17 09:56:33 PST
(In reply to comment #3)
> Next person who copies binary chop code instead of reusing gets a smack.

We could possibly even use std::binary_search from <algorithm> rather than writing our own.