1 static const char messg[] = "def";
2
3 static inline int add(int a, int b)
4 {
5 return a + b;
6 }
7
8 int foo(int a, int b) { return add(a + b, 1); }
9 void bar(int a, int b) { add(a + b, 1); }
10
11
12 static inline const char *lstrip(const char *str)
13 {
14 return str + 1;
15 }
16
17 const char *bas(void) { return lstrip("abc"); }
18 const char *qus(void) { return lstrip(messg); }
19
20 /*
21 * check-name: call-inlined
22 * check-command: test-linearize -Wno-decl -m64 $file
23 * check-assert: sizeof(void*) == 8
24 *
25 * check-output-start
26 foo:
27 .L0:
28 <entry-point>
29 add.32 %r3 <- %arg1, %arg2
30 add.32 %r5 <- %r3, $1
31 ret.32 %r5
32
33
34 bar:
35 .L3:
36 <entry-point>
37 ret
38
39
40 bas:
41 .L6:
42 <entry-point>
43 add.64 %r16 <- "abc", $1
44 ret.64 %r16
45
46
47 qus:
48 .L9:
49 <entry-point>
50 add.64 %r21 <- messg, $1
51 ret.64 %r21
52
53
54 * check-output-end
55 */