1.1 --- a/src/share/vm/opto/machnode.hpp Mon Apr 14 20:56:48 2014 -0400 1.2 +++ b/src/share/vm/opto/machnode.hpp Thu Apr 10 23:15:13 2014 -0700 1.3 @@ -210,7 +210,14 @@ 1.4 bool may_be_short_branch() const { return (flags() & Flag_may_be_short_branch) != 0; } 1.5 1.6 // Avoid back to back some instructions on some CPUs. 1.7 - bool avoid_back_to_back() const { return (flags() & Flag_avoid_back_to_back) != 0; } 1.8 + enum AvoidBackToBackFlag { AVOID_NONE = 0, 1.9 + AVOID_BEFORE = Flag_avoid_back_to_back_before, 1.10 + AVOID_AFTER = Flag_avoid_back_to_back_after, 1.11 + AVOID_BEFORE_AND_AFTER = AVOID_BEFORE | AVOID_AFTER }; 1.12 + 1.13 + bool avoid_back_to_back(AvoidBackToBackFlag flag_value) const { 1.14 + return (flags() & flag_value) == flag_value; 1.15 + } 1.16 1.17 // instruction implemented with a call 1.18 bool has_call() const { return (flags() & Flag_has_call) != 0; }