+ switch (mode) {
+ case ATTRIBUTE_MAP_MODE_IDENTITY:
+ return enabled;
+ case ATTRIBUTE_MAP_MODE_POSITION:
+ /* Copy VERT_ATTRIB_POS enable bit into GENERIC0 position */
+ return (enabled & ~VERT_BIT_GENERIC0)
+ | ((enabled & VERT_BIT_POS) << VERT_ATTRIB_GENERIC0);
+ case ATTRIBUTE_MAP_MODE_GENERIC0:
+ /* Copy VERT_ATTRIB_GENERIC0 enable bit into POS position */
+ return (enabled & ~VERT_BIT_POS)
+ | ((enabled & VERT_BIT_GENERIC0) >> VERT_ATTRIB_GENERIC0);
+ default:
+ return 0;
+ }