116 uint8_t input_buffer[num_elements * 32];
118 for (
size_t i = 0; i < num_elements; ++i) {
119 for (
size_t j = 0; j < 4; ++j) {
120 uint64_t word = (limbs[i * 4 + j]);
121 size_t idx = i * 32 + j * 8;
122 input_buffer[idx] = (uint8_t)((word >> 56) & 0xff);
123 input_buffer[idx + 1] = (uint8_t)((word >> 48) & 0xff);
124 input_buffer[idx + 2] = (uint8_t)((word >> 40) & 0xff);
125 input_buffer[idx + 3] = (uint8_t)((word >> 32) & 0xff);
126 input_buffer[idx + 4] = (uint8_t)((word >> 24) & 0xff);
127 input_buffer[idx + 5] = (uint8_t)((word >> 16) & 0xff);
128 input_buffer[idx + 6] = (uint8_t)((word >> 8) & 0xff);
129 input_buffer[idx + 7] = (uint8_t)(word & 0xff);