__MD_ORIG_TYPE
ret = (ptr & 0xFFFFFFFF) & ~__MD_ORIG_TYPE;
ret |= __SHIFTIN(type, __MD_ORIG_TYPE);
*type = __SHIFTOUT(orig, __MD_ORIG_TYPE);
*ptr = (uintptr_t)(orig & ~__MD_ORIG_TYPE) | __MD_PTR_BASE;