34 BITFLAGS_FORMAT_START_COMBINED(m_flags, raw);
36 using enum cosmos::mem::MapType;
39 default: BITFLAGS_STREAM() <<
"MAP_???";
break;
40 case SHARED: BITFLAGS_STREAM() <<
"MAP_SHARED";
break;
41 case SHARED_VALIDATE: BITFLAGS_STREAM() <<
"MAP_SHARED_VALIDATE";
break;
42 case PRIVATE: BITFLAGS_STREAM() <<
"MAP_PRIVATE";
break;
45 BITFLAGS_STREAM() <<
'|';
48 BITFLAGS_ADD(MAP_32BIT);
50 BITFLAGS_ADD(MAP_ANONYMOUS);
51 BITFLAGS_ADD(MAP_FIXED);
52 BITFLAGS_ADD(MAP_FIXED_NOREPLACE);
53 BITFLAGS_ADD(MAP_GROWSDOWN);
54 BITFLAGS_ADD(MAP_HUGETLB);
55 BITFLAGS_ADD(MAP_LOCKED);
56 BITFLAGS_ADD(MAP_NONBLOCK);
57 BITFLAGS_ADD(MAP_NORESERVE);
58 BITFLAGS_ADD(MAP_POPULATE);
59 BITFLAGS_ADD(MAP_STACK);
60 BITFLAGS_ADD(MAP_SYNC);
61 BITFLAGS_ADD(MAP_UNINITIALIZED);
63 const auto huge_shift = (raw >> MAP_HUGE_SHIFT) & 0x3f;
65 if (huge_shift != 0) {
67 BITFLAGS_STREAM() << huge_shift <<
"<<MAP_HUGE_SHIFT|";
70 return BITFLAGS_STR();