1 /* PR target/48688 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2" } */
4 
fn1(int x)5 int fn1 (int x) { return (x << 3) | 5; }
fn2(int x)6 int fn2 (int x) { return (x * 8) | 5; }
fn3(int x)7 int fn3 (int x) { return (x << 3) + 5; }
fn4(int x)8 int fn4 (int x) { return (x * 8) + 5; }
fn5(int x)9 int fn5 (int x) { return (x << 3) ^ 5; }
fn6(int x)10 int fn6 (int x) { return (x * 8) ^ 5; }
fn7(long x)11 long fn7 (long x) { return (x << 3) | 5; }
fn8(long x)12 long fn8 (long x) { return (x * 8) | 5; }
fn9(long x)13 long fn9 (long x) { return (x << 3) + 5; }
fn10(long x)14 long fn10 (long x) { return (x * 8) + 5; }
fn11(long x)15 long fn11 (long x) { return (x << 3) ^ 5; }
fn12(long x)16 long fn12 (long x) { return (x * 8) ^ 5; }
fn13(unsigned x)17 long fn13 (unsigned x) { return (x << 3) | 5; }
fn14(unsigned x)18 long fn14 (unsigned x) { return (x * 8) | 5; }
fn15(unsigned x)19 long fn15 (unsigned x) { return (x << 3) + 5; }
fn16(unsigned x)20 long fn16 (unsigned x) { return (x * 8) + 5; }
fn17(unsigned x)21 long fn17 (unsigned x) { return (x << 3) ^ 5; }
fn18(unsigned x)22 long fn18 (unsigned x) { return (x * 8) ^ 5; }
23 
24 /* { dg-final { scan-assembler-not "\[ \t\]x?or\[bwlq\]\[ \t\]" } } */
25