[lld][WebAssemlby] Add TLS test to lld/test/wasm/data-segments.ll. NFC
authorSam Clegg <sbc@chromium.org>
Fri, 20 May 2022 23:16:36 +0000 (16:16 -0700)
committerSam Clegg <sbc@chromium.org>
Sat, 21 May 2022 00:44:05 +0000 (17:44 -0700)
Differential Revision: https://reviews.llvm.org/D126104

lld/test/wasm/data-segments.ll

index be526de..25b4598 100644 (file)
@@ -45,6 +45,8 @@
 @e = private constant [9 x i8] c"constant\00", align 1
 @f = private constant i8 43, align 4
 
+@g = thread_local global i32 99, align 4
+
 ; ERROR: 'bulk-memory' feature must be used in order to use shared memory
 
 ; ACTIVE-LABEL: - Type:            CODE
@@ -77,7 +79,7 @@
 ; PASSIVE-LABEL: - Type:            START
 ; PASSIVE-NEXT:    StartFunction:   2
 ; PASSIVE-LABEL: - Type:            DATACOUNT
-; PASSIVE-NEXT:    Count:           2
+; PASSIVE-NEXT:    Count:           3
 ; PASSIVE-LABEL: - Type:            CODE
 ; PASSIVE-NEXT:    Functions:
 ; PASSIVE-NEXT:      - Index:           0
@@ -85,7 +87,7 @@
 ; PASSIVE-NEXT:        Body:            0B
 ; PASSIVE-NEXT:      - Index:           1
 ; PASSIVE-NEXT:        Locals:          []
-; PASSIVE-NEXT:        Body:            0B
+; PASSIVE-NEXT:        Body:            {{.*}}
 ; PASSIVE-NEXT:      - Index:           2
 ; PASSIVE-NEXT:        Locals:          []
 ; PASSIVE-NEXT:        Body:            {{.*}}
 ; PASSIVE-NEXT:    Segments:
 ; PASSIVE-NEXT:      - SectionOffset:   3
 ; PASSIVE-NEXT:        InitFlags:       1
+; PASSIVE-NEXT:        Content:         '63000000'
+; PASSIVE-NEXT:      - SectionOffset:   9
+; PASSIVE-NEXT:        InitFlags:       1
 ; PASSIVE-NEXT:        Content:         636F6E7374616E74000000002B
-; PASSIVE-NEXT:      - SectionOffset:   18
+; PASSIVE-NEXT:      - SectionOffset:   24
 ; PASSIVE-NEXT:        InitFlags:       1
 ; PASSIVE-NEXT:        Content:         68656C6C6F00676F6F646279650000002A000000
 ; PASSIVE-NEXT:  - Type:            CUSTOM
 ;      PASSIVE-PIC:  - Type:            START
 ; PASSIVE-PIC-NEXT:    StartFunction:   2
 ; PASSIVE-PIC-NEXT:  - Type:            DATACOUNT
-; PASSIVE-PIC-NEXT:    Count:           2
+; PASSIVE-PIC-NEXT:    Count:           3
 ; PASSIVE-PIC-NEXT:  - Type:            CODE
 ; PASSIVE-PIC-NEXT:    Functions:
 ; PASSIVE-PIC-NEXT:      - Index:           0
 ; PASSIVE-PIC-NEXT:        Body:            0B
 ; PASSIVE-PIC-NEXT:      - Index:           1
 ; PASSIVE-PIC-NEXT:        Locals:          []
-; PASSIVE-PIC-NEXT:        Body:            0B
+; PASSIVE-PIC-NEXT:        Body:            {{.*}}
 ; PASSIVE-PIC-NEXT:      - Index:           2
 ; PASSIVE-PIC-NEXT:        Locals:
 ; PASSIVE32-PIC-NEXT:          - Type:            I32
 ; PASSIVE-PIC-NEXT:    Segments:
 ; PASSIVE-PIC-NEXT:      - SectionOffset:   3
 ; PASSIVE-PIC-NEXT:        InitFlags:       1
+; PASSIVE-PIC-NEXT:        Content:         '63000000'
+; PASSIVE-PIC-NEXT:      - SectionOffset:   9
+; PASSIVE-PIC-NEXT:        InitFlags:       1
 ; PASSIVE-PIC-NEXT:        Content:         636F6E7374616E74000000002B
-; PASSIVE-PIC-NEXT:      - SectionOffset:   18
+; PASSIVE-PIC-NEXT:      - SectionOffset:   24
 ; PASSIVE-PIC-NEXT:        InitFlags:       1
 ; PASSIVE-PIC-NEXT:        Content:         68656C6C6F00676F6F646279650000002A000000
 ; PASSIVE-PIC-NEXT:  - Type:            CUSTOM
 
 ; PIC-DIS:           .local [[PTR]]
 ; PIC-DIS-NEXT:      global.get      1
-; PIC-DIS-NEXT:      [[PTR]].const   10036
+; PIC-DIS-NEXT:      [[PTR]].const   10040
 ; PIC-DIS-NEXT:      [[PTR]].add
 ; PIC-DIS-NEXT:      local.set       0
 
 ; DIS-NEXT:           block
 ; DIS-NEXT:            block
 
-; NOPIC-DIS-NEXT:       [[PTR]].const   11060
+; NOPIC-DIS-NEXT:       [[PTR]].const   11064
 ; PIC-DIS-NEXT:         local.get       0
 
 ; DIS-NEXT:             i32.const       0
 ; DIS-NEXT:                                            # 2:     down to label0
 ; DIS-NEXT:            end
 
-; NOPIC-DIS-NEXT:      [[PTR]].const   1024
-; PIC-DIS-NEXT:        [[PTR]].const   0
+; NOPIC-DIS-NEXT:      [[PTR]].const   1028
+; PIC-DIS-NEXT:        [[PTR]].const   4
 ; PIC-DIS-NEXT:        global.get      1
 ; PIC-DIS-NEXT:        [[PTR]].add
 
 ; DIS-NEXT:            i32.const       0
 ; DIS-NEXT:            i32.const       13
-; DIS-NEXT:            memory.init     0, 0
+; DIS-NEXT:            memory.init     1, 0
 
-; NOPIC-DIS-NEXT:      [[PTR]].const   1040
-; PIC-DIS-NEXT:        [[PTR]].const   16
+; NOPIC-DIS-NEXT:      [[PTR]].const   1044
+; PIC-DIS-NEXT:        [[PTR]].const   20
 ; PIC-DIS-NEXT:        global.get      1
 ; PIC-DIS-NEXT:        [[PTR]].add
 
 ; DIS-NEXT:            i32.const       0
 ; DIS-NEXT:            i32.const       20
-; DIS-NEXT:            memory.init     1, 0
-; NOPIC-DIS-NEXT:      [[PTR]].const   1060
-; PIC-DIS-NEXT:        [[PTR]].const   36
+; DIS-NEXT:            memory.init     2, 0
+; NOPIC-DIS-NEXT:      [[PTR]].const   1064
+; PIC-DIS-NEXT:        [[PTR]].const   40
 ; PIC-DIS-NEXT:        global.get      1
 ; PIC-DIS-NEXT:        [[PTR]].add
 ; DIS-NEXT:            i32.const       0
 
 ; PIC-DIS-NEXT:        call 3
 
-; NOPIC-DIS-NEXT:      [[PTR]].const   11060
+; NOPIC-DIS-NEXT:      [[PTR]].const   11064
 ; PIC-DIS-NEXT:        local.get       0
 
 ; DIS-NEXT:            i32.const       2
 ; DIS-NEXT:            i32.atomic.store        0
 
-; NOPIC-DIS-NEXT:      [[PTR]].const   11060
+; NOPIC-DIS-NEXT:      [[PTR]].const   11064
 ; PIC-DIS-NEXT:        local.get       0
 
 ; DIS-NEXT:            i32.const       -1
 ; DIS-NEXT:            br              1               # 1:     down to label1
 ; DIS-NEXT:           end
 
-; NOPIC-DIS-NEXT:     [[PTR]].const   11060
+; NOPIC-DIS-NEXT:     [[PTR]].const   11064
 ; PIC-DIS-NEXT:       local.get       0
 
 ; DIS-NEXT:           i32.const       1
 ; DIS-NEXT:           memory.atomic.wait32    0
 ; DIS-NEXT:           drop
 ; DIS-NEXT:          end
-; DIS-NEXT:          data.drop       0
 ; DIS-NEXT:          data.drop       1
+; DIS-NEXT:          data.drop       2
 ; DIS-NEXT:         end