vtable_massacre branch needs more eyes

Andrew Whitworth wknight8111 at gmail.com
Wed Feb 10 16:56:28 UTC 2010


I've completed much of the work in the vtable_massacre branch this
morning, with help from cotto++ and darbelo++, among others. This
branch rips out the following vtables:

PMC* get_bignum()
void set_bignum_int(INTVAL value)
void set_bignum_num(FLOATVAL value)
void set_bignum_str(STRING* value)
PMC* pow(PMC* value, PMC* dest)
PMC* pow_int(INTVAL value, PMC* dest)
PMC* pow_float(FLOATVAL value, PMC* dest)
void i_pow(PMC* value) :write
void i_pow_int(INTVAL value) :write
void i_pow_float(FLOATVAL value) :write
PMC* bitwise_or(PMC* value, PMC* dest)
PMC* bitwise_or_int(INTVAL value, PMC* dest)
void i_bitwise_or(PMC* value) :write
void i_bitwise_or_int(INTVAL value) :write
PMC* bitwise_and(PMC* value, PMC* dest)
PMC* bitwise_and_int(INTVAL value, PMC* dest)
void i_bitwise_and(PMC* value) :write
void i_bitwise_and_int(INTVAL value) :write
PMC* bitwise_xor(PMC* value, PMC* dest)
PMC* bitwise_xor_int(INTVAL value, PMC* dest)
void i_bitwise_xor(PMC* value) :write
void i_bitwise_xor_int(INTVAL value) :write
PMC* bitwise_ors(PMC* value, PMC* dest)
PMC* bitwise_ors_str(STRING* value, PMC* dest)
void i_bitwise_ors(PMC* value) :write
void i_bitwise_ors_str(STRING* value) :write
PMC* bitwise_ands(PMC* value, PMC* dest)
PMC* bitwise_ands_str(STRING* value, PMC* dest)
void i_bitwise_ands(PMC* value) :write
void i_bitwise_ands_str(STRING* value) :write
PMC* bitwise_xors(PMC* value, PMC* dest)
PMC* bitwise_xors_str(STRING* value, PMC* dest)
void i_bitwise_xors(PMC* value) :write
void i_bitwise_xors_str(STRING* value) :write
PMC* bitwise_not(PMC* dest)
void i_bitwise_not() :write
PMC* bitwise_nots(PMC* dest)
void i_bitwise_nots() :write
PMC* bitwise_shl(PMC* value, PMC* dest)
PMC* bitwise_shl_int(INTVAL value, PMC* dest)
void i_bitwise_shl(PMC* value) :write
void i_bitwise_shl_int(INTVAL value) :write
PMC* bitwise_shr(PMC* value, PMC* dest)
PMC* bitwise_shr_int(INTVAL value, PMC* dest)
void i_bitwise_shr(PMC* value) :write
void i_bitwise_shr_int(INTVAL value) :write
PMC* bitwise_lsr(PMC* value, PMC* dest)
PMC* bitwise_lsr_int(INTVAL value, PMC* dest)
void i_bitwise_lsr(PMC* value) :write
void i_bitwise_lsr_int(INTVAL value) :write

Also, we've modified the ops in src/ops/bit.ops and the pow ops in
src/ops/math.ops to call the appropriate {get|set}_{integer|float}
vtables to perform the same operations.

I would like to get some more testing on various platforms and also
for various projects and HLLs to make sure we aren't losing or
breaking anything major. I would like to get this branch merged in
before the weekend, the sooner the better.

Thanks,

--Andrew Whitworth


More information about the parrot-dev mailing list