1char *cps(char *data, short pos) 2{ 3 data += pos; 4 return data; 5} 6 7int *ipss(int *data, short pos) 8{ 9 data += pos; 10 return data; 11} 12int *ipus(int *data, unsigned short pos) 13{ 14 data += pos; 15 return data; 16} 17 18int *ipsi(int *data, int pos) 19{ 20 data += pos; 21 return data; 22} 23int *ipui(int *data, unsigned int pos) 24{ 25 data += pos; 26 return data; 27} 28 29/* 30 * check-name: pointer-arith64 31 * check-command: test-linearize -Wno-decl --arch=generic -m64 $file 32 * 33 * check-output-start 34cps: 35.L0: 36 <entry-point> 37 sext.64 %r2 <- (16) %arg2 38 add.64 %r5 <- %r2, %arg1 39 ret.64 %r5 40 41 42ipss: 43.L2: 44 <entry-point> 45 sext.64 %r10 <- (16) %arg2 46 mul.64 %r11 <- %r10, $4 47 add.64 %r14 <- %r11, %arg1 48 ret.64 %r14 49 50 51ipus: 52.L4: 53 <entry-point> 54 zext.64 %r19 <- (16) %arg2 55 mul.64 %r20 <- %r19, $4 56 add.64 %r23 <- %r20, %arg1 57 ret.64 %r23 58 59 60ipsi: 61.L6: 62 <entry-point> 63 sext.64 %r28 <- (32) %arg2 64 mul.64 %r29 <- %r28, $4 65 add.64 %r32 <- %r29, %arg1 66 ret.64 %r32 67 68 69ipui: 70.L8: 71 <entry-point> 72 zext.64 %r37 <- (32) %arg2 73 mul.64 %r38 <- %r37, $4 74 add.64 %r41 <- %r38, %arg1 75 ret.64 %r41 76 77 78 * check-output-end 79 */ 80