libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / vect-early-break_107-pr113364.c
blobf489265dbfe5eb8fe302dcc34901abaf6e6d5c14
1 /* { dg-do compile } */
2 /* { dg-add-options vect_early_break } */
3 /* { dg-require-effective-target vect_early_break } */
4 /* { dg-require-effective-target vect_int } */
5 /* { dg-additional-options "-w" } */
7 typedef const unsigned char *It;
8 It DecodeSLEB128(It begin, It end, int *v) {
9 int value = 0;
10 unsigned shift = 0;
11 unsigned char byte;
14 if (begin == end)
15 return begin;
16 byte = *(begin++);
17 int slice = byte & 0x7f;
18 value |= slice << shift;
19 } while (byte >= 128);
20 *v = value;
21 return begin;