1;;! target = "x86_64"
2;;! test = "optimize"
3
4(module
5  (memory (export "memory") 1)
6  (func (export "load-without-offset") (param i32) (result i32 i32)
7    local.get 0
8    i32.load
9    local.get 0
10    i32.load
11  )
12  (func (export "load-with-offset") (param i32) (result i32 i32)
13    local.get 0
14    i32.load offset=1234
15    local.get 0
16    i32.load offset=1234
17  )
18)
19
20;; function u0:0(i64 vmctx, i64, i32) -> i32, i32 tail {
21;;     gv0 = vmctx
22;;     gv1 = load.i64 notrap aligned readonly gv0+8
23;;     gv2 = load.i64 notrap aligned gv1+24
24;;     gv3 = vmctx
25;;     gv4 = load.i64 notrap aligned gv3+64
26;;     gv5 = load.i64 notrap aligned readonly can_move gv3+56
27;;     stack_limit = gv2
28;;
29;;                                 block0(v0: i64, v1: i64, v2: i32):
30;; @0057                               v6 = load.i64 notrap aligned readonly can_move v0+56
31;; @0057                               v5 = uextend.i64 v2
32;; @0057                               v7 = iadd v6, v5
33;; @0057                               v8 = load.i32 little heap v7
34;; @005f                               jump block1
35;;
36;;                                 block1:
37;; @005f                               return v8, v8
38;; }
39;;
40;; function u0:1(i64 vmctx, i64, i32) -> i32, i32 tail {
41;;     gv0 = vmctx
42;;     gv1 = load.i64 notrap aligned readonly gv0+8
43;;     gv2 = load.i64 notrap aligned gv1+24
44;;     gv3 = vmctx
45;;     gv4 = load.i64 notrap aligned gv3+64
46;;     gv5 = load.i64 notrap aligned readonly can_move gv3+56
47;;     stack_limit = gv2
48;;
49;;                                 block0(v0: i64, v1: i64, v2: i32):
50;; @0064                               v6 = load.i64 notrap aligned readonly can_move v0+56
51;; @0064                               v5 = uextend.i64 v2
52;; @0064                               v7 = iadd v6, v5
53;; @0064                               v8 = iconst.i64 1234
54;; @0064                               v9 = iadd v7, v8  ; v8 = 1234
55;; @0064                               v10 = load.i32 little heap v9
56;; @006e                               jump block1
57;;
58;;                                 block1:
59;; @006e                               return v10, v10
60;; }
61