Skip to content

Commit

Permalink
Improve hoisting of size intrinsic.
Browse files Browse the repository at this point in the history
  • Loading branch information
Arch D. Robison committed Mar 26, 2014
1 parent 2e5da98 commit c5e4bd1
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions src/cgutils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -851,11 +851,11 @@ static Value *emit_nthptr(Value *v, size_t n, MDNode *tbaa)
return tbaa_decorate(tbaa,builder.CreateLoad(vptr, false));
}

static Value *emit_nthptr(Value *v, Value *idx)
static Value *emit_nthptr(Value *v, Value *idx, MDNode *tbaa)
{
// p = (jl_value_t**)v; p[n]
Value *vptr = emit_nthptr_addr(v, idx);
return builder.CreateLoad(vptr, false);
return tbaa_decorate(tbaa,builder.CreateLoad(vptr, false));
}

static Value *typed_load(Value *ptr, Value *idx_0based, jl_value_t *jltype,
Expand Down Expand Up @@ -1232,7 +1232,7 @@ static Value *emit_arraysize(Value *t, Value *dim)
#endif
Value *dbits =
emit_nthptr(t, builder.CreateAdd(dim,
ConstantInt::get(dim->getType(), o)));
ConstantInt::get(dim->getType(), o)), tbaa_arraysize);
return builder.CreatePtrToInt(dbits, T_size);
}

Expand Down

0 comments on commit c5e4bd1

Please sign in to comment.