45#define FL_WAVE8_SPREAD_TO_16(lane_u8_0, lane_u8_1, out_16) \
46 do { \
47 const ::fl::u8 _a = (::fl::u8)(lane_u8_0); \
48 const ::fl::u8 _b = (::fl::u8)(lane_u8_1); \
49 const ::fl::u16 _even = \
50 (::fl::u16)((::fl::u16)::fl::detail::kTranspose4_16_LUT[_b & 0x0Fu] | \
51 ((::fl::u16)::fl::detail::kTranspose4_16_LUT[_b >> 4] << 8)); \
52 const ::fl::u16 _odd = \
53 (::fl::u16)(((::fl::u16)::fl::detail::kTranspose4_16_LUT[_a & 0x0Fu] | \
54 ((::fl::u16)::fl::detail::kTranspose4_16_LUT[_a >> 4] << 8)) \
55 << 1); \
56 (out_16) |= (::fl::u16)(_even | _odd); \
57 } while (0)