Re: Missing root in MVM_hll_set_config()

2013-12-30 Thread jonathan
Nicholas Clark wrote .. > In MVM_hll_set_config(), the call to MVM_string_utf8_decode() inside > check_config_key() causes allocation, which means that it can cause GC > runs. Which can mean that the object pointed to by config_hash can move. > Indeed. > 1) Is the attached patch the correct way

Re: Missing write barrier in MVM_sc_get_sc()

2013-12-30 Thread jonathan
Nicholas Clark wrote .. > I believe that a write barrier is missing in MVM_sc_get_sc(). Patch attached. > Agree with analysis and fix. Applied, thanks! > This was really really messy to figure out. The bug manifests as a SEGV in > process_worklist because a pointer to an object is 0x6. Clearly n

Re: Missing write barriers for MVM_string_find_encoding()

2013-12-30 Thread jonathan
Nicholas Clark wrote .. > I believe that MVM_file_set_encoding() needs to root oshandle (patch attached) > as MVM_string_find_encoding() can allocate and hence can cause a GC run. > Patch applied; thanks. > There are two other uses of MVM_string_find_encoding(). One is: > > /* At least find

compiling Rakudo's Test.pm - i64 being written to a register marked as obj

2013-12-30 Thread Nicholas Clark
The first thing after compiling the setting on Rakudo is this: /home/nicholas/Sandpit/moar-g/bin/moar --libpath=/home/nicholas/Sandpit/moar-g/languages/nqp/lib perl6.moarvm --target=mbc --output=lib/Test.moarvm lib/Test.pm It can SEGV. The problem seems to be that it's writing an i64 (specifica

Re: compiling Rakudo's Test.pm - i64 being written to a register marked as obj

2013-12-30 Thread jonathan
Nicholas Clark wrote .. > The first thing after compiling the setting on Rakudo is this: > > /home/nicholas/Sandpit/moar-g/bin/moar > --libpath=/home/nicholas/Sandpit/moar-g/languages/nqp/lib > perl6.moarvm --target=mbc --output=lib/Test.moarvm lib/Test.pm > > It can SEGV. The problem seems to