Skip to content

Commit e0ef143

Browse files
authored
[lld][WebAssembly] Only include __stack_pointer when needed (#199739)
1 parent e6d8a8f commit e0ef143

30 files changed

Lines changed: 63 additions & 197 deletions

lld/test/wasm/alias.s

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,6 @@ _start:
2525
# CHECK-NEXT: - Type: MEMORY
2626
# CHECK-NEXT: Memories:
2727
# CHECK-NEXT: - Minimum: 0x1
28-
# CHECK-NEXT: - Type: GLOBAL
29-
# CHECK-NEXT: Globals:
30-
# CHECK-NEXT: - Index: 0
31-
# CHECK-NEXT: Type: I32
32-
# CHECK-NEXT: Mutable: true
33-
# CHECK-NEXT: InitExpr:
34-
# CHECK-NEXT: Opcode: I32_CONST
35-
# CHECK-NEXT: Value: 65536
3628
# CHECK-NEXT: - Type: EXPORT
3729
# CHECK-NEXT: Exports:
3830
# CHECK-NEXT: - Name: memory
@@ -54,7 +46,4 @@ _start:
5446
# CHECK-NEXT: FunctionNames:
5547
# CHECK-NEXT: - Index: 0
5648
# CHECK-NEXT: Name: _start
57-
# CHECK-NEXT: GlobalNames:
58-
# CHECK-NEXT: - Index: 0
59-
# CHECK-NEXT: Name: __stack_pointer
6049
# CHECK-NEXT: ...

lld/test/wasm/build-id.test

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,18 +43,18 @@ foo:
4343

4444

4545
# DEFAULT: Contents of section build_id:
46-
# DEFAULT-NEXT: 0079 103f86e6 3bb81959 2e99ffa9 acfed331 .?..;..Y.......1
47-
# DEFAULT-NEXT: 0089 3a
46+
# DEFAULT-NEXT: 005b 104d7593 76cce050 6db31eff 76e5f762 .Mu.v..Pm...v..b
47+
# DEFAULT-NEXT: 006b e0 .
4848

4949
# SHA1: Contents of section build_id:
50-
# SHA1-NEXT: 0079 1410ade4 e75d1c9d 71023465 03b7572f .....]..q.4e..W/
51-
# SHA1-NEXT: 0089 c06c5ae0 74 .lZ.t
50+
# SHA1-NEXT: 005b 14b1ac8d 72e31051 2facff88 ff9b81cc ....r..Q/.......
51+
# SHA1-NEXT: 006b f332c211 7e .2..~
5252

5353
# UUID: Contents of section build_id:
54-
# UUID-NEXT: 0079 10
54+
# UUID-NEXT: 005b 10
5555

5656
# HEX: Contents of section build_id:
57-
# HEX-NEXT: 0079 04123456 78 ..4Vx
57+
# HEX-NEXT: 005b 04123456 78 ..4Vx
5858

5959

6060
# NONE-NOT: Contents of section build_id:

lld/test/wasm/ctor-return-value.s

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,4 @@ _start:
4545
# CHECK-NEXT: Name: myctor
4646
# CHECK-NEXT: - Index: 2
4747
# CHECK-NEXT: Name: _start
48-
# CHECK-NEXT: GlobalNames:
49-
# CHECK-NEXT: - Index: 0
50-
# CHECK-NEXT: Name: __stack_pointer
5148
# CHECK-NEXT: ...

lld/test/wasm/duplicate-global-imports.s

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,5 +65,3 @@ _start:
6565
# CHECK-NEXT: Name: g3
6666
# CHECK-NEXT: - Index: 2
6767
# CHECK-NEXT: Name: g4
68-
# CHECK-NEXT: - Index: 3
69-
# CHECK-NEXT: Name: __stack_pointer

lld/test/wasm/export-optional.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ foo:
2929
# CHECK-NEXT: Index: 0
3030
# CHECK-NEXT: - Name: __start_foo
3131
# CHECK-NEXT: Kind: GLOBAL
32-
# CHECK-NEXT: Index: 1
32+
# CHECK-NEXT: Index: 0

lld/test/wasm/externref.s

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,6 @@ _start:
3131
# CHECK: - Type: GLOBAL
3232
# CHECK-NEXT: Globals:
3333
# CHECK-NEXT: - Index: 0
34-
# CHECK-NEXT: Type: I32
35-
# CHECK-NEXT: Mutable: true
36-
# CHECK-NEXT: InitExpr:
37-
# CHECK-NEXT: Opcode: I32_CONST
38-
# CHECK-NEXT: Value: 65536
39-
# CHECK-NEXT: - Index: 1
4034
# CHECK-NEXT: Type: EXTERNREF
4135
# CHECK-NEXT: Mutable: true
4236
# CHECK-NEXT: InitExpr:

lld/test/wasm/function-imports-first.ll

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,4 @@ declare i32 @ret32(float) local_unnamed_addr #1
4141
; CHECK-NEXT: Name: _start
4242
; CHECK-NEXT: - Index: 1
4343
; CHECK-NEXT: Name: ret32
44-
; CHECK-NEXT: GlobalNames:
45-
; CHECK-NEXT: - Index: 0
46-
; CHECK-NEXT: Name: __stack_pointer
4744
; CHECK-NEXT: ...

lld/test/wasm/function-imports.s

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,4 @@ _start:
3636
# CHECK-NEXT: Name: ret32
3737
# CHECK-NEXT: - Index: 1
3838
# CHECK-NEXT: Name: _start
39-
# CHECK-NEXT: GlobalNames:
40-
# CHECK-NEXT: - Index: 0
41-
# CHECK-NEXT: Name: __stack_pointer
4239
# CHECK-NEXT: ...

lld/test/wasm/gc-imports.s

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,6 @@ _start:
4848
# CHECK-NEXT: GlobalNames:
4949
# CHECK-NEXT: - Index: 0
5050
# CHECK-NEXT: Name: used_undef_global
51-
# CHECK-NEXT: - Index: 1
52-
# CHECK-NEXT: Name: __stack_pointer
5351
# CHECK-NEXT: ...
5452

5553
# RUN: wasm-ld --no-gc-sections --allow-undefined \

lld/test/wasm/gc-sections.ll

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,9 @@ entry:
5353
; CHECK: - Type: GLOBAL
5454
; CHECK-NEXT: Globals:
5555
; CHECK-NEXT: - Index: 0
56-
; CHECK-NEXT: Type: I32
56+
; CHECK-NEXT: Type: I64
5757
; CHECK-NEXT: Mutable: true
5858
; CHECK-NEXT: InitExpr:
59-
; CHECK-NEXT: Opcode: I32_CONST
60-
; CHECK-NEXT: Value: 65536
61-
; CHECK-NEXT: - Index: 1
62-
; CHECK-NEXT: Type: I64
63-
; CHECK-NEXT: Mutable: true
64-
; CHECK-NEXT: InitExpr:
6559
; CHECK-NEXT: Opcode: I64_CONST
6660
; CHECK-NEXT: Value: 456
6761

@@ -84,8 +78,6 @@ entry:
8478
; CHECK-NEXT: Name: use_global
8579
; CHECK-NEXT: GlobalNames:
8680
; CHECK-NEXT: - Index: 0
87-
; CHECK-NEXT: Name: __stack_pointer
88-
; CHECK-NEXT: - Index: 1
8981
; CHECK-NEXT: Name: used_global
9082
; CHECK-NEXT: DataSegmentNames:
9183
; CHECK-NEXT: - Index: 0

0 commit comments

Comments
 (0)