Hi Feng, The gcc toolchain was 3.4.0. I updated my toolchain to a 4.x version and it fixed the issue. Thanks, John
On May 20, 4:25 am, Feng Qian <[email protected]> wrote: > What is your GCC revision?On Thu, May 14, 2009 at 1:08 AM, > <[email protected]> wrote: > > > Hi Erik, > > Just to quickly update you, I can get it to run without any gcc > > optimization flags. I'll let you know when I find the problematic > > code. > > Thanks, > > John > > > On May 12, 4:52 pm, [email protected] wrote: > >> Hi Erik, > > >> I run into the problem by just starting up the VM. I tried the > >> backtrace earlier and haven't gotten very far with it. > > >> backtrace() returned 1 addresses > >> ./shell_g [0x33404] > > >> And for the sake of brevity, attached below is the default JS stack > >> trace that is printed on crash. > > >> Thanks, > >> John > > >> ==== Stack trace ============================================ > > >> Security context: 0x408003c1 <JS Object>#0# > >> 1: ConfigureTemplateInstance(this=0x40800561 <JS > >> Object>#1#,obj=0x40425b39 <JS Object>#2#,data=0x40800101 > >> <ObjectTemplateInfo>#3#) > >> 6: Instantiate(this=0x40800561 <JS Object>#1#,data=0x40800101 > >> <ObjectTemplateInfo>#3#,name=0x4099a135 <undefined>) > >> 7: arguments adaptor frame: 1->2 > > >> ==== Details ================================================ > > >> [1]: ConfigureTemplateInstance(this=0x40800561 <JS > >> Object>#1#,obj=0x40425b39 <JS Object>#2#,data=0x40800101 > >> <ObjectTemplateInfo>#3#) { > >> // stack-allocated locals > >> var prop_data = 0x4080011d <FunctionTemplateInfo>#4# > >> var value = 0x40805a01 <JS Function print>#5# > >> var name = 0x40400651 <String[5]: print> > >> var properties = 0x40400669 <JS Object>#6# > >> var requires_access_checks = 0x4099a179 <false> > >> var attributes = 0 > >> var i = 0 > >> // expression stack (top to bottom) > >> [16] : 0 > >> [15] : 0x40805a01 <JS Function print>#5# > >> [14] : 0x40400651 <String[5]: print> > >> [13] : 0x40425b39 <JS Object>#2# > >> --------- s o u r c e c o d e --------- > >> function ConfigureTemplateInstance(obj, data) {? var properties = > >> %GetTemplateField(data, 1);? if (properties) {? var > >> requires_access_checks = %DisableAccessChecks(obj);? try {? > >> for (var i = 0; i < properties[0]; i += 3) {? var name = > >> properties[i + 1];? var prop_data = properties[i + 2];? > >> var attri... > > >> ----------------------------------------- > > >> } > > >> [6]: Instantiate(this=0x40800561 <JS Object>#1#,data=0x40800101 > >> <ObjectTemplateInfo>#3#,name=0x4099a135 <undefined>) { > >> // stack-allocated locals > >> var Constructor = 0x40800299 <FunctionTemplateInfo>#7# > >> var tag = 1 > >> var result = 0x4099a135 <undefined> > >> // expression stack (top to bottom) > >> [04] : 0x40800561 <JS Object>#1# > >> [03] : 0x408059e5 <JS Function>#8# > >> --------- s o u r c e c o d e --------- > >> function Instantiate(data, name) {? if (!%IsTemplate(data)) return > >> data;? var tag = %GetTemplateField(data, 0);? switch (tag) {? > >> case 0:? return InstantiateFunction(data, name);? case > >> 1:? var Constructor = %GetTemplateField(data, 2);? var > >> result = Constructor ? new (Instantiate(Constructor))() :... > > >> ----------------------------------------- > > >> } > > >> [7]: arguments adaptor frame: 1->2 { > >> // actual arguments > >> [00] : 0x40800101 <ObjectTemplateInfo>#3# > > >> } > > >> ==== Key ============================================ > > >> #0# 0x408003c1: 0x408003c1 <JS Object> > >> NaN: 0x4099a129 <Number: nan> > >> JSON: 0x408004e5 <JS Object>#9# > >> Math: 0x404142c5 <a MathConstructor>>#10# > >> Infinity: 0x4099c101 <Number: inf> > >> undefined: 0x4099a135 <undefined> > >> #1# 0x40800561: 0x40800561 <JS Object> > >> $NaN: 0x4099a129 <Number: nan> > >> $Math: 0x404142c5 <a MathConstructor>>#10# > >> global: 0x408003c1 <JS Object>#0# > >> kMessages: 0x4041a035 <an Object>>#11# > >> $Infinity: 0x4099c101 <Number: inf> > >> hexCharArray: 0x404104ed <JS array[16]>#12# > >> kVowelSounds: 0x404189c9 <an Object>>#13# > >> functionCache: 0x404245b5 <an Object>>#14# > >> visited_arrays: 0x404081ed <JS array[0]>#15# > >> kLineLengthLimit: 78 > >> hexCharCodeArray: 0x4041059d <JS array[16]>#16# > >> kApiFunctionCache: 0x404245b5 <an Object>>#14# > >> reusableMatchInfo: 0x4040b71d <JS array[5]>#17# > >> kCapitalVowelSounds: 0x40418e61 <an Object>>#18# > >> kStackOverflowBoilerplate: 0x40421451 <a RangeError>>#19# > >> kAddMessageAccessorsMarker: 0x4041a799 <an Object>>#20# > >> #2# 0x40425b39: 0x40425b39 <JS Object> > >> #3# 0x40800101: 0x40800101 <ObjectTemplateInfo> > >> #4# 0x4080011d: 0x4080011d <FunctionTemplateInfo> > >> #5# 0x40805a01: 0x40805a01 <JS Function print> > >> #6# 0x40400669: 0x40400669 <JS Object> > >> #7# 0x40800299: 0x40800299 <FunctionTemplateInfo> > >> #8# 0x408059e5: 0x408059e5 <JS Function> > >> #9# 0x408004e5: 0x408004e5 <JS Object> > >> #10# 0x404142c5: 0x404142c5 <a MathConstructor>> > >> E: 0x4099e3e1 <Number: 2.718281828459045> > >> PI: 0x4099e41d <Number: 3.141592653589793> > >> LN2: 0x4099e3f9 <Number: 0.6931471805599453> > >> LN10: 0x4099e3ed <Number: 2.302585092994046> > >> SQRT2: 0x4099e435 <Number: 1.414213562373095> > >> LOG2E: 0x4099e405 <Number: 1.442695040888963> > >> LOG10E: 0x4099e411 <Number: 0.4342944819032518> > >> SQRT1_2: 0x4099e429 <Number: 0.7071067811865476> > >> #11# 0x4041a035: 0x4041a035 <an Object>> > >> pcre_error: 0x4099e73d <String[31]: PCRE function %0, error > >> code %1> > >> not_defined: 0x4099ec09 <String[17]: %0 is not defined> > >> stack_trace: 0x4099ea79 <String[15]\: Stack Trace:\n%0> > >> cyclic_proto: 0x4099e521 <String[22]: Cyclic __proto__ value> > >> regexp_flags: 0x4099e779 <String[61]: Cannot supply flags when > >> constructing one RegExp from another> > >> illegal_eval: 0x4099ed15 <String[32]: Unsupported indirect eval > >> () call> > >> invalid_json: 0x4099f2c1 <String[29]: String '%0' is not valid > >> JSON> > >> illegal_break: 0x4099f1a1 <String[23]: Illegal break statement> > >> unknown_label: 0x4099e9a5 <String[20]: Undefined label '%0'> > >> redeclaration: 0x4099e931 <String[33]: %0 '%1' has already been > >> declared> > >> invalid_break: 0x4099e9d9 <String[23]: Invalid break statement> > >> invalid_regexp: 0x4099f17d <String[27]: Invalid RegExp pattern /%0/ > > >> expected_label: 0x4099e681 <String[14]: Expected label> > >> stack_overflow: 0x4099f069 <String[32]: Maximum call stack size > >> exceeded> > >> null_to_object: 0x4099ef55 <String[29]: Cannot convert null to > >> object> > >> apply_overflow: 0x4099f091 <String[52]: Function.prototype.apply > >> cannot support %0 arguments> > >> illegal_return: 0x4099f1e5 <String[24]: Illegal return statement> > >> unexpected_eos: 0x4099e649 <String[23]: Unexpected end of input> > >> with_expression: 0x4099ed55 <String[20]: %0 has no properties> > >> not_constructor: 0x4099ebd5 <String[23]: %0 is not a constructor> > >> unable_to_parse: 0x4099f0cd <String[11]: Parse error> > >> apply_wrong_args: 0x4099ee59 <String[55]: Function.prototype.apply: > >> Arguments list has wrong type> > >> unexpected_token: 0x4099e559 <String[19]: Unexpected token %0> > >> invalid_continue: 0x4099ea11 <String[26]: Invalid continue > >> statement> > >> malformed_regexp: 0x4099e6b1 <String[36]: Invalid regular > >> expression: /%0/: %1> > >> undefined_method: 0x4099eac5 <String[28]: Object %1 has no method > >> '%0'> > >> illegal_continue: 0x4099f1c1 <String[26]: Illegal continue > >> statement> > >> null_or_undefined: 0x4099eb59 <String[43]: Cannot access property of > >> null or undefined> > >> reduce_no_initial: 0x4099ef7d <String[43]: Reduce of empty array with > >> no initial value> > >> no_input_to_regexp: 0x4099f265 <String[14]: No input to %0> > >> uncaught_exception: 0x4099ea51 <String[11]: Uncaught %0> > >> illegal_invocation: 0x4099ed8d <String[18]: Illegal invocation> > >> apply_non_function: 0x4099ee05 <String[75]: Function.prototype.apply > >> was called on %0, which is a %1 and not a function> > >> circular_structure: 0x4099f305 <String[37]: Converting circular > >> structure to JSON> > >> newline_after_throw: 0x4099e90d <String[27]: Illegal newline after > >> throw> > >> unterminated_regexp: 0x4099e6f9 <String[37]: Invalid regular > >> expression: missing /> > >> called_non_callable: 0x4099ea91 <String[20]: %0 is not a function> > >> no_catch_or_finally: 0x4099e979 <String[34]: Missing catch or finally > >> after try> > >> result_not_primitive: 0x4099f27d <String[40]: Result of %0 must be a > >> primitive, was %1> > >> invalid_array_length: 0x4099efcd <String[20]: Invalid array length> > >> property_not_function: 0x4099eb09 <String[44]: Property '%0' of object > >> %1 is not a function> > >> no_setter_in_callback: 0x4099edc9 <String[52]: Cannot set property %0 > >> of %1 which has only a getter> > >> invalid_lhs_in_for_in: 0x4099e7ed <String[32]: Invalid left-hand side > >> in for-in> > >> duplicate_regexp_flag: 0x4099f101 <String[24]: Duplicate RegExp flag > >> %0> > >> error_loading_debugger: 0x4099f225 <String[25]: Error loading debugger > >> %0> > >> unexpected_token_number: 0x4099e595 <String[17]: Unexpected number> > >> invalid_in_operator_use: 0x4099ee99 <String[49]: Cannot use 'in' > >> operator to search for '%0' in %1> > >> unexpected_token_string: 0x4099e5d1 <String[17]: Unexpected string> > >> invalid_lhs_in_prefix_op: 0x4099e855 <String[53]: Invalid left-hand > >> side expression in prefix operation> > >> unrecognized_regexp_flag: 0x4099f141 <String[27]: Unrecognized RegExp > >> flag %0> > >> non_object_property_load: 0x4099ec45 <String[31]: Cannot read property > >> '%0' of %1> > >> non_object_property_call: 0x4099ecd9 <String[29]: Cannot call method > >> '%0' of %1> > >> invalid_lhs_in_assignment: 0x4099e7c1 <String[36]: Invalid left-hand > >> side in assignment> > >> non_object_property_store: 0x4099ec91 <String[30]: Cannot set property > >> '%0' of %1> > >> invalid_lhs_in_postfix_op: 0x4099e815 <String[54]: Invalid left-hand > >> side expression in postfix operation> > >> instanceof_nonobject_proto: 0x4099ef11 <String[58]: Function has non- > >> object prototype '%0' in instanceof check> > >> invalid_array_apply_length: 0x4099f00d <String[59]: > >> Function.prototype.apply supports only up to 1024 arguments> > >> cannot_convert_to_primitive: 0x4099eb8d <String[40]: Cannot convert > >> object to primitive value> > >> multiple_defaults_in_switch: 0x4099e8b9 <String[48]: More than one > >> default clause in switch statement> > >> unexpected_token_identifier: 0x4099e611 <String[21]: Unexpected > >> identifier> > >> instanceof_function_expected: 0x4099eed5 <String[52]: Expecting a > >> function in instanceof check, but got %0> > >> #12# 0x404104ed: 0x404104ed <JS array[16]> > >> 0: 0x4099a641 <String[1]: 0> > >> 1: 0x4099dc91 > >> ... > > >> read more » --~--~---------~--~----~------------~-------~--~----~ v8-users mailing list [email protected] http://groups.google.com/group/v8-users -~----------~----~----~----~------~----~------~--~---
