Mercurial > hg > truffle
comparison src/share/vm/opto/machnode.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 | 62c54fcc0a35 |
children | 52b4284cb496 fc2c88ea11a9 |
comparison
equal
deleted
inserted
replaced
17875:cb1b723cbca8 | 17877:17b2fbdb6637 |
---|---|
208 | 208 |
209 // Support for short branches | 209 // Support for short branches |
210 bool may_be_short_branch() const { return (flags() & Flag_may_be_short_branch) != 0; } | 210 bool may_be_short_branch() const { return (flags() & Flag_may_be_short_branch) != 0; } |
211 | 211 |
212 // Avoid back to back some instructions on some CPUs. | 212 // Avoid back to back some instructions on some CPUs. |
213 bool avoid_back_to_back() const { return (flags() & Flag_avoid_back_to_back) != 0; } | 213 enum AvoidBackToBackFlag { AVOID_NONE = 0, |
214 AVOID_BEFORE = Flag_avoid_back_to_back_before, | |
215 AVOID_AFTER = Flag_avoid_back_to_back_after, | |
216 AVOID_BEFORE_AND_AFTER = AVOID_BEFORE | AVOID_AFTER }; | |
217 | |
218 bool avoid_back_to_back(AvoidBackToBackFlag flag_value) const { | |
219 return (flags() & flag_value) == flag_value; | |
220 } | |
214 | 221 |
215 // instruction implemented with a call | 222 // instruction implemented with a call |
216 bool has_call() const { return (flags() & Flag_has_call) != 0; } | 223 bool has_call() const { return (flags() & Flag_has_call) != 0; } |
217 | 224 |
218 // First index in _in[] corresponding to operand, or -1 if there is none | 225 // First index in _in[] corresponding to operand, or -1 if there is none |