• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download

cps(char * data,short pos)1 char *cps(char *data, short pos)
2 {
3 	data += pos;
4 	return data;
5 }
6 
ipss(int * data,short pos)7 int *ipss(int *data, short pos)
8 {
9 	data += pos;
10 	return data;
11 }
ipus(int * data,unsigned short pos)12 int *ipus(int *data, unsigned short pos)
13 {
14 	data += pos;
15 	return data;
16 }
17 
ipsi(int * data,int pos)18 int *ipsi(int *data, int pos)
19 {
20 	data += pos;
21 	return data;
22 }
ipui(int * data,unsigned int pos)23 int *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
34 cps:
35 .L0:
36 	<entry-point>
37 	sext.64     %r2 <- (16) %arg2
38 	add.64      %r5 <- %r2, %arg1
39 	ret.64      %r5
40 
41 
42 ipss:
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 
51 ipus:
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 
60 ipsi:
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 
69 ipui:
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