ibmruntimes / v8ppc

Port of Google V8 javascript engine to PowerPC®
Other
94 stars 19 forks source link

64bit implementation doesn't support serialization of code #95

Closed andrewlow closed 10 years ago

andrewlow commented 10 years ago

The problem is the function descriptor uses a RelocInfo::INTERNAL_REFERENCE which isn't handled by the serialization code.

This causes the entry to be ignored and when deserialized, the pointer is not fixed up and the code is invalid.

This prevents building 64bit with snapshot enabled.

andrewlow commented 10 years ago

Running this pair of tests will cause a crash today:

./out/ppc64.release/cctest test-serialize/Serialize --testing_serialization_file=/tmp/serdes_Deserialize

./out/ppc64.release/cctest test-serialize/Deserialize --testing_serialization_file=/tmp/serdes_Deserialize

andrewlow commented 10 years ago

Fixed with b9b3fd93ee92acdbd3c88c69b256b10a717874d9

Building with snapshot enabled should work. A local run of the tests was 100% clean.