• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 struct s {
2 	int:16;
3 	short f:6;
4 };
5 
local(struct s s)6 static short local(struct s s)
7 {
8 	return s.f;
9 }
10 
foo(struct s s)11 static void foo(struct s s)
12 {
13 	while (s.f) ;
14 }
15 
16 /*
17  * check-name: not-same-memop0
18  * check-command: test-linearize -Wno-decl -fdump-ir=mem2reg $file
19  *
20  * check-output-start
21 local:
22 .L0:
23 	<entry-point>
24 	store.32    %arg1 -> 0[s]
25 	load.16     %r1 <- 2[s]
26 	trunc.6     %r2 <- (16) %r1
27 	sext.16     %r3 <- (6) %r2
28 	ret.16      %r3
29 
30 
31 foo:
32 .L2:
33 	<entry-point>
34 	store.32    %arg1 -> 0[s]
35 	br          .L6
36 
37 .L6:
38 	load.16     %r5 <- 2[s]
39 	trunc.6     %r6 <- (16) %r5
40 	setne.1     %r7 <- %r6, $0
41 	cbr         %r7, .L6, .L5
42 
43 .L5:
44 	ret
45 
46 
47  * check-output-end
48  */
49