# Pentium IV HyperThreading possible unit masks # name:branch_retired type:bitmask default:0x0c 0x01 branch not-taken predicted 0x02 branch not-taken mispredicted 0x04 branch taken predicted 0x08 branch taken mispredicted name:mispred_branch_retired type:bitmask default:0x01 0x01 retired instruction is non-bogus # FIXME: 0 count nothing, 0xff count more than 0x01, docs says it's a bitmask: # something wrong in documentation ? name:bpu_fetch_request type:bitmask default:0x01 0x01 trace cache lookup miss name:itlb_reference type:bitmask default:0x07 0x01 ITLB hit 0x02 ITLB miss 0x04 uncacheable ITLB hit name:memory_cancel type:bitmask default:0x08 0x04 replayed because no store request buffer available 0x08 conflicts due to 64k aliasing name:memory_complete type:bitmask default:0x03 0x01 load split completed, excluding UC/WC loads 0x02 any split stores completed 0x04 uncacheable load split completed 0x08 uncacheable store split complete name:load_port_replay type:mandatory default:0x02 0x02 split load name:store_port_replay type:mandatory default:0x02 0x02 split store name:mob_load_replay type:bitmask default:0x3a 0x02 replay cause: unknown store address 0x08 replay cause: unknown store data 0x10 replay cause: partial overlap between load and store 0x20 replay cause: mismatched low 4 bits between load and store addr name:bsq_cache_reference type:bitmask default:0x073f 0x01 read 2nd level cache hit shared 0x02 read 2nd level cache hit exclusive 0x04 read 2nd level cache hit modified 0x08 read 3rd level cache hit shared 0x10 read 3rd level cache hit exclusive 0x20 read 3rd level cache hit modified 0x100 read 2nd level cache miss 0x200 read 3rd level cache miss 0x400 writeback lookup from DAC misses 2nd level cache name:x87_assist type:bitmask default:0x1f 0x01 handle FP stack underflow 0x02 handle FP stack overflow 0x04 handle x87 output overflow 0x08 handle x87 output underflow 0x10 handle x87 input assist name:machine_clear type:bitmask default:0x01 0x01 count a portion of cycles the machine is cleared for any cause 0x04 count each time the machine is cleared due to memory ordering issues 0x40 count each time the machine is cleared due to self modifying code name:global_power_events type:mandatory default:0x01 0x01 mandatory name:tc_ms_xfer type:mandatory default:0x01 0x01 count TC to MS transfers name:uop_queue_writes type:bitmask default:0x07 0x01 count uops written to queue from TC build mode 0x02 count uops written to queue from TC deliver mode 0x04 count uops written to queue from microcode ROM name:instr_retired type:bitmask default:0x01 0x01 count non-bogus instructions which are not tagged 0x02 count non-bogus instructions which are tagged 0x04 count bogus instructions which are not tagged 0x08 count bogus instructions which are tagged name:uops_retired type:bitmask default:0x01 0x01 count marked uops which are non-bogus 0x02 count marked uops which are bogus name:uop_type type:bitmask default:0x02 0x02 count uops which are load operations 0x04 count uops which are store operations name:branch_type type:bitmask default:0x1f 0x01 count unconditional jumps 0x02 count conditional jumps 0x04 count call branches 0x08 count return branches 0x10 count indirect jumps