Before segmented code cache was implemented, there was only one MemoryPoolMXBean corresponding to code cache, whose name was 'Code heap'.
Now if SegmentedCodeCache is turned on, then there are three mx beans corresponding to different segments, but their names don't include 'Code heap' string:
w/o segmented code cache:
jdk/bin/java -XX:-SegmentedCodeCache Test
Code heap
...
w/ segmented code cache:
jdk/bin/java -XX:+SegmentedCodeCache Test
non-methods
profiled nmethods
non-profiled nmethods
...
I believe that names returned by these beans should contain 'Code heap', because it will make beans naming consistent for both segmented and non-segmented code cache and it will be easier to understand what kind of data is stored in memory regions represented by such beans.