Mercurial > hg > truffle
diff src/share/vm/opto/doCall.cpp @ 6268:6c5b7a6becc8
7187454: stack overflow in C2 compiler thread on Solaris x86
Summary: Added new FormatBufferResource class to use thread's resource area for error message buffer.
Reviewed-by: twisti
author | kvn |
---|---|
date | Mon, 30 Jul 2012 09:49:25 -0700 |
parents | 977007096840 |
children | b72784e722ff |
line wrap: on
line diff
--- a/src/share/vm/opto/doCall.cpp Fri Jul 27 16:14:15 2012 -0700 +++ b/src/share/vm/opto/doCall.cpp Mon Jul 30 09:49:25 2012 -0700 @@ -523,10 +523,10 @@ retnode = _gvn.transform( new (C, 3) LShiftINode(retnode, intcon(16)) ); retnode = _gvn.transform( new (C, 3) RShiftINode(retnode, intcon(16)) ); } else { - assert(ct == T_INT, err_msg("rt=%d, ct=%d", rt, ct)); + assert(ct == T_INT, err_msg_res("rt=%d, ct=%d", rt, ct)); } } else if (rt == T_OBJECT) { - assert(ct == T_OBJECT, err_msg("rt=T_OBJECT, ct=%d", ct)); + assert(ct == T_OBJECT, err_msg_res("rt=T_OBJECT, ct=%d", ct)); if (ctype->is_loaded()) { Node* if_fail = top(); retnode = gen_checkcast(retnode, makecon(TypeKlassPtr::make(ctype->as_klass())), &if_fail); @@ -539,7 +539,7 @@ push(retnode); } } else { - assert(ct == rt, err_msg("unexpected mismatch rt=%d, ct=%d", rt, ct)); + assert(ct == rt, err_msg_res("unexpected mismatch rt=%d, ct=%d", rt, ct)); // push a zero; it's better than getting an oop/int mismatch retnode = pop_node(rt); retnode = zerocon(ct);