Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Use immediate class as specialization type

We also use the direct class for inline caches, so we want to use this
consistently. This also makes it easier to improve check_serial so the
JIT can create a better version of that. Another advantage is that this
makes it easier to create direct jumps to specialized functions in the
JIT.
  • Loading branch information...
commit 98e4d4bf4b410fc7b5031da8cb78d869f7d692be 1 parent 3bbc111
@dbussink dbussink authored
Showing with 2 additions and 2 deletions.
  1. +1 −1  vm/builtin/compiledcode.cpp
  2. +1 −1  vm/llvm/state.cpp
View
2  vm/builtin/compiledcode.cpp
@@ -195,7 +195,7 @@ namespace rubinius {
{
CompiledCode* code = as<CompiledCode>(exec);
- Class* cls = args.recv()->class_object(state);
+ Class* cls = args.recv()->lookup_begin(state);
int id = cls->class_id();
MachineCode* v = code->machine_code();
View
2  vm/llvm/state.cpp
@@ -663,7 +663,7 @@ namespace rubinius {
compile_soon(state, gct, candidate->compiled_code, call_frame, candidate->block_env(), true);
} else {
if(candidate->compiled_code->can_specialize_p()) {
- compile_soon(state, gct, candidate->compiled_code, call_frame, candidate->self()->class_object(state));
+ compile_soon(state, gct, candidate->compiled_code, call_frame, candidate->self()->lookup_begin(state));
} else {
compile_soon(state, gct, candidate->compiled_code, call_frame, cNil);
}
Please sign in to comment.
Something went wrong with that request. Please try again.