equal
deleted
inserted
replaced
316 } |
316 } |
317 } |
317 } |
318 } |
318 } |
319 } |
319 } |
320 |
320 |
|
321 RegisterOrConstant AbstractAssembler::delayed_value(int(*value_fn)(), Register tmp, int offset) { |
|
322 intptr_t val = (intptr_t) (*value_fn)(); |
|
323 if (val != 0) return val + offset; |
|
324 return delayed_value_impl(delayed_value_addr(value_fn), tmp, offset); |
|
325 } |
|
326 RegisterOrConstant AbstractAssembler::delayed_value(address(*value_fn)(), Register tmp, int offset) { |
|
327 intptr_t val = (intptr_t) (*value_fn)(); |
|
328 if (val != 0) return val + offset; |
|
329 return delayed_value_impl(delayed_value_addr(value_fn), tmp, offset); |
|
330 } |
321 intptr_t* AbstractAssembler::delayed_value_addr(int(*value_fn)()) { |
331 intptr_t* AbstractAssembler::delayed_value_addr(int(*value_fn)()) { |
322 DelayedConstant* dcon = DelayedConstant::add(T_INT, (DelayedConstant::value_fn_t) value_fn); |
332 DelayedConstant* dcon = DelayedConstant::add(T_INT, (DelayedConstant::value_fn_t) value_fn); |
323 return &dcon->value; |
333 return &dcon->value; |
324 } |
334 } |
325 intptr_t* AbstractAssembler::delayed_value_addr(address(*value_fn)()) { |
335 intptr_t* AbstractAssembler::delayed_value_addr(address(*value_fn)()) { |