On 10/24/2016 11:19 PM, Nikunj A Dadhania wrote: > + begin = extract##size(src2, size - begin_last - 1, num_bits); \ > + end = extract##size(src2, size - end_last - 1, num_bits); \ > + shift = extract##size(src2, size - shift_last - 1, num_bits); \
What I mean is shift = extract##size(src2, 0, 6); end = extract##size(src2, 8, 6); begin = extract##size(src2, 16, 6); The values are at the *same* position for both instructions. There's no need to parameterize with silly bigendian numberings. r~