[GB.JIT]
* BUG: Really fix enumeration for non-pure objects. git-svn-id: svn://localhost/gambas/trunk@4775 867c0c6c-44f3-4631-809d-bfa615b0a4ec
This commit is contained in:
parent
1777bef542
commit
8d12476edb
1 changed files with 1 additions and 1 deletions
|
@ -3176,7 +3176,7 @@ void JumpEnumNextExpression::codegen(){
|
||||||
llvm::Value* stop;
|
llvm::Value* stop;
|
||||||
if (!TYPE_is_pure_object(jfirst->obj->type)){
|
if (!TYPE_is_pure_object(jfirst->obj->type)){
|
||||||
store_pc(pc);
|
store_pc(pc);
|
||||||
stop = builder->CreateICmpNE(builder->CreateCall(get_global_function_jif(EXEC_enum_next, 'c', "h"), getInteger(16, drop)), getInteger(1, false));
|
stop = builder->CreateICmpNE(builder->CreateCall(get_global_function_jif(EXEC_enum_next, 'c', "h"), getInteger(16, drop)), getInteger(8, false));
|
||||||
} else {
|
} else {
|
||||||
llvm::Value* cenum_obj = extract_value(builder->CreateLoad(locals[jfirst->ctrl+1]), 1);
|
llvm::Value* cenum_obj = extract_value(builder->CreateLoad(locals[jfirst->ctrl+1]), 1);
|
||||||
int stop_offset = sizeof(GB_BASE) + sizeof(LIST) + 5*sizeof(void*);
|
int stop_offset = sizeof(GB_BASE) + sizeof(LIST) + 5*sizeof(void*);
|
||||||
|
|
Loading…
Reference in a new issue