Mercurial > hg > truffle
diff src/cpu/sparc/vm/macroAssembler_sparc.inline.hpp @ 17877:17b2fbdb6637
8038297: Avoid placing CTI immediately following cbcond instruction on T4
Summary: Insert a nop between cbcond and CTI
Reviewed-by: kvn, twisti
author | iveresov |
---|---|
date | Thu, 10 Apr 2014 23:15:13 -0700 |
parents | 87a6f2df28e2 |
children | 1ca36602c05b 4b2830dcf178 |
line wrap: on
line diff
--- a/src/cpu/sparc/vm/macroAssembler_sparc.inline.hpp Mon Apr 14 20:56:48 2014 -0400 +++ b/src/cpu/sparc/vm/macroAssembler_sparc.inline.hpp Thu Apr 10 23:15:13 2014 -0700 @@ -233,6 +233,7 @@ } inline void MacroAssembler::br( Condition c, bool a, Predict p, Label& L ) { + insert_nop_after_cbcond(); br(c, a, p, target(L)); } @@ -248,6 +249,7 @@ } inline void MacroAssembler::brx( Condition c, bool a, Predict p, Label& L ) { + insert_nop_after_cbcond(); brx(c, a, p, target(L)); } @@ -269,6 +271,7 @@ } inline void MacroAssembler::fb( Condition c, bool a, Predict p, Label& L ) { + insert_nop_after_cbcond(); fb(c, a, p, target(L)); } @@ -318,6 +321,7 @@ } inline void MacroAssembler::call( Label& L, relocInfo::relocType rt ) { + insert_nop_after_cbcond(); MacroAssembler::call( target(L), rt); }