Chromium Code Reviews| Index: src/arm/stub-cache-arm.cc |
| =================================================================== |
| --- src/arm/stub-cache-arm.cc (revision 2034) |
| +++ src/arm/stub-cache-arm.cc (working copy) |
| @@ -61,7 +61,9 @@ |
| // Check that the flags match what we're looking for. |
| __ ldr(offset, FieldMemOperand(offset, Code::kFlagsOffset)); |
| - __ and_(offset, offset, Operand(~Code::kFlagsTypeMask)); |
| + __ and_(offset, |
| + offset, |
| + Operand(~(Code::kFlagsTypeMask | Code::kFlagsICInLoopMask))); |
|
Kasper Lund
2009/05/25 09:45:42
Why not have a constant mask for the combination o
|
| __ cmp(offset, Operand(flags)); |
| __ b(ne, &miss); |
| @@ -494,7 +496,8 @@ |
| Object* CallStubCompiler::CompileCallField(Object* object, |
| JSObject* holder, |
| int index, |
| - String* name) { |
| + String* name, |
| + Code::Flags flags) { |
|
Kevin Millikin (Chromium)
2009/05/25 11:00:42
Since you've generalized the call site to take fla
|
| // ----------- S t a t e ------------- |
| // -- lr: return address |
| // ----------------------------------- |
| @@ -538,14 +541,15 @@ |
| __ Jump(ic, RelocInfo::CODE_TARGET); |
| // Return the generated code. |
| - return GetCode(FIELD, name); |
| + return GetCodeWithFlags(flags, name); |
| } |
| Object* CallStubCompiler::CompileCallConstant(Object* object, |
| JSObject* holder, |
| JSFunction* function, |
| - CheckType check) { |
| + CheckType check, |
| + Code::Flags flags) { |
|
Kevin Millikin (Chromium)
2009/05/25 11:00:42
Same as above with type CONSTANT_FUNCTION.
|
| // ----------- S t a t e ------------- |
| // -- lr: return address |
| // ----------------------------------- |
| @@ -663,7 +667,7 @@ |
| if (function->shared()->name()->IsString()) { |
| function_name = String::cast(function->shared()->name()); |
| } |
| - return GetCode(CONSTANT_FUNCTION, function_name); |
| + return GetCodeWithFlags(flags, function_name); |
| } |