src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdEpoch.hpp
changeset 58132 caa25ab47aca
parent 53244 9807daeb47c4
child 58157 9dca61a7df19
child 58863 c16ac7a2eba4
equal deleted inserted replaced
58131:3054503bad7d 58132:caa25ab47aca
    30 
    30 
    31 #define USED_BIT 1
    31 #define USED_BIT 1
    32 #define METHOD_USED_BIT (USED_BIT << 2)
    32 #define METHOD_USED_BIT (USED_BIT << 2)
    33 #define EPOCH_1_SHIFT 0
    33 #define EPOCH_1_SHIFT 0
    34 #define EPOCH_2_SHIFT 1
    34 #define EPOCH_2_SHIFT 1
    35 #define LEAKP_SHIFT 8
       
    36 
       
    37 #define USED_EPOCH_1_BIT (USED_BIT << EPOCH_1_SHIFT)
    35 #define USED_EPOCH_1_BIT (USED_BIT << EPOCH_1_SHIFT)
    38 #define USED_EPOCH_2_BIT (USED_BIT << EPOCH_2_SHIFT)
    36 #define USED_EPOCH_2_BIT (USED_BIT << EPOCH_2_SHIFT)
    39 #define LEAKP_USED_EPOCH_1_BIT (USED_EPOCH_1_BIT << LEAKP_SHIFT)
       
    40 #define LEAKP_USED_EPOCH_2_BIT (USED_EPOCH_2_BIT << LEAKP_SHIFT)
       
    41 #define METHOD_USED_EPOCH_1_BIT (METHOD_USED_BIT << EPOCH_1_SHIFT)
    37 #define METHOD_USED_EPOCH_1_BIT (METHOD_USED_BIT << EPOCH_1_SHIFT)
    42 #define METHOD_USED_EPOCH_2_BIT (METHOD_USED_BIT << EPOCH_2_SHIFT)
    38 #define METHOD_USED_EPOCH_2_BIT (METHOD_USED_BIT << EPOCH_2_SHIFT)
    43 #define METHOD_AND_CLASS_IN_USE_BITS (METHOD_USED_BIT | USED_BIT)
    39 #define METHOD_AND_CLASS_IN_USE_BITS (METHOD_USED_BIT | USED_BIT)
    44 #define METHOD_AND_CLASS_IN_USE_EPOCH_1_BITS (METHOD_AND_CLASS_IN_USE_BITS << EPOCH_1_SHIFT)
    40 #define METHOD_AND_CLASS_IN_USE_EPOCH_1_BITS (METHOD_AND_CLASS_IN_USE_BITS << EPOCH_1_SHIFT)
    45 #define METHOD_AND_CLASS_IN_USE_EPOCH_2_BITS (METHOD_AND_CLASS_IN_USE_BITS << EPOCH_2_SHIFT)
    41 #define METHOD_AND_CLASS_IN_USE_EPOCH_2_BITS (METHOD_AND_CLASS_IN_USE_BITS << EPOCH_2_SHIFT)
    73 
    69 
    74   static traceid in_use_prev_epoch_bit() {
    70   static traceid in_use_prev_epoch_bit() {
    75     return _epoch_state ? USED_EPOCH_1_BIT : USED_EPOCH_2_BIT;
    71     return _epoch_state ? USED_EPOCH_1_BIT : USED_EPOCH_2_BIT;
    76   }
    72   }
    77 
    73 
    78   static traceid leakp_in_use_this_epoch_bit() {
       
    79     return _epoch_state ? LEAKP_USED_EPOCH_2_BIT : LEAKP_USED_EPOCH_1_BIT;
       
    80   }
       
    81 
       
    82   static traceid leakp_in_use_prev_epoch_bit() {
       
    83     return _epoch_state ? LEAKP_USED_EPOCH_1_BIT : LEAKP_USED_EPOCH_2_BIT;
       
    84   }
       
    85 
       
    86   static traceid method_in_use_this_epoch_bit() {
    74   static traceid method_in_use_this_epoch_bit() {
    87     return _epoch_state ? METHOD_USED_EPOCH_2_BIT : METHOD_USED_EPOCH_1_BIT;
    75     return _epoch_state ? METHOD_USED_EPOCH_2_BIT : METHOD_USED_EPOCH_1_BIT;
    88   }
    76   }
    89 
    77 
    90   static traceid method_in_use_prev_epoch_bit() {
    78   static traceid method_in_use_prev_epoch_bit() {