1;;! target = "x86_64"
2;;! flags = "-W function-references,gc"
3;;! test = "compile"
4
5(module
6  (type $ty (struct (field (mut f32))
7                    (field (mut i8))
8                    (field (mut anyref))))
9
10  (func (param f32 i32 anyref) (result (ref $ty))
11    (struct.new $ty (local.get 0) (local.get 1) (local.get 2))
12  )
13)
14;; wasm[0]::function[0]:
15;;       pushq   %rbp
16;;       movq    %rsp, %rbp
17;;       movq    8(%rdi), %r10
18;;       movq    0x10(%r10), %r10
19;;       addq    $0x50, %r10
20;;       cmpq    %rsp, %r10
21;;       ja      0xc7
22;;   19: subq    $0x40, %rsp
23;;       movq    %r12, 0x20(%rsp)
24;;       movq    %r13, 0x28(%rsp)
25;;       movq    %r14, 0x30(%rsp)
26;;       movq    %rdx, %r12
27;;       movdqu  %xmm0, 8(%rsp)
28;;       leaq    (%rsp), %r14
29;;       movl    %ecx, (%r14)
30;;       movl    $0xb0000000, %esi
31;;       xorl    %edx, %edx
32;;       movl    $0x20, %ecx
33;;       movl    $8, %r8d
34;;       movq    %rdi, %r13
35;;       callq   0x160
36;;       movq    8(%r13), %r8
37;;       ╰─╼ stack_map: frame_size=64, frame_offsets=[0]
38;;       movq    0x18(%r8), %r8
39;;       movq    %rax, %r10
40;;       movl    %r10d, %r9d
41;;       movdqu  8(%rsp), %xmm0
42;;       movss   %xmm0, 0x10(%r8, %r9)
43;;       movq    %r12, %rdx
44;;       movb    %dl, 0x14(%r8, %r9)
45;;       movl    (%r14), %r11d
46;;       movq    %r11, %rdx
47;;       andl    $1, %edx
48;;       testl   %r11d, %r11d
49;;       sete    %sil
50;;       movzbl  %sil, %esi
51;;       orl     %esi, %edx
52;;       testl   %edx, %edx
53;;       jne     0xa4
54;;   97: movl    %r11d, %ecx
55;;       leaq    (%r8, %rcx), %rax
56;;       addq    $1, 8(%r8, %rcx)
57;;       movl    (%r14), %edx
58;;       movl    %edx, 0x18(%r8, %r9)
59;;       movq    %r10, %rax
60;;       movq    0x20(%rsp), %r12
61;;       movq    0x28(%rsp), %r13
62;;       movq    0x30(%rsp), %r14
63;;       addq    $0x40, %rsp
64;;       movq    %rbp, %rsp
65;;       popq    %rbp
66;;       retq
67;;   c7: ud2
68