brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.8 KiB · 34c49e8 Raw
141 lines · plain
1@a = hidden global [6 x i8] c"hello\00", align 12@b = hidden global [8 x i8] c"goodbye\00", align 13@c = hidden global [9 x i8] c"whatever\00", align 14@d = hidden global i32 42, align 45 6@e = private constant [9 x i8] c"constant\00", align 17@f = private constant i8 43, align 48 9; RUN: llc --mtriple=wasm32-unknown-unknown -mattr=+bulk-memory,+atomics -filetype=obj %s -o %t.passive.o10; RUN: llc --mtriple=wasm64-unknown-unknown -mattr=+bulk-memory,+atomics -filetype=obj %s -o %t.passive64.o11; RUN: llc --mtriple=wasm32-unknown-unknown -filetype=obj %s -o %t.o12 13; RUN: wasm-ld -no-gc-sections --no-entry -o %t.merged.wasm %t.o14; RUN: obj2yaml %t.merged.wasm | FileCheck %s --check-prefix=MERGE15 16; MERGE-LABEL: - Type:            DATA17; MERGE-NEXT:    Segments:18; MERGE-NEXT:      - SectionOffset:   819; MERGE-NEXT:        InitFlags:       020; MERGE-NEXT:        Offset:21; MERGE:             Content:         636F6E7374616E74000000002B22; MERGE-NEXT:      - SectionOffset:   2823; MERGE-NEXT:        InitFlags:       024; MERGE-NEXT:        Offset:25; MERGE:             Content:         68656C6C6F00676F6F6462796500776861746576657200002A00000026; MERGE-NEXT:  - Type:            CUSTOM27; MERGE-NEXT:    Name:            name28; MERGE-NEXT:    FunctionNames:29; MERGE-NEXT:      - Index:           030; MERGE-NEXT:        Name:            __wasm_call_ctors31; MERGE-NEXT:    GlobalNames:32; MERGE-NEXT:      - Index:           033; MERGE-NEXT:        Name:            __stack_pointer34; MERGE-NEXT:    DataSegmentNames:35; MERGE-NEXT:      - Index:           036; MERGE-NEXT:        Name:            .rodata37 38; RUN: wasm-ld -no-gc-sections --no-entry --no-merge-data-segments -o %t.separate.wasm %t.o39; RUN: obj2yaml %t.separate.wasm | FileCheck %s --check-prefix=SEPARATE40 41; SEPARATE-NOT:                  DATACOUNT42; SEPARATE-LABEL: - Type:            DATA43; SEPARATE-NEXT:    Segments:44; SEPARATE-NEXT:      - SectionOffset:   845; SEPARATE-NEXT:        InitFlags:       046; SEPARATE-NEXT:        Offset:47; SEPARATE:             Content:         636F6E7374616E740048; SEPARATE-NEXT: - SectionOffset: 2449; SEPARATE-NEXT:        InitFlags:       050; SEPARATE-NEXT:        Offset:51; SEPARATE:             Content:         2B52; SEPARATE-NEXT:      - SectionOffset:   3253; SEPARATE-NEXT:        InitFlags:       054; SEPARATE-NEXT:        Offset:55; SEPARATE:             Content:         68656C6C6F0056; SEPARATE-NEXT:      - SectionOffset:   4557; SEPARATE-NEXT:        InitFlags:       058; SEPARATE-NEXT:        Offset:59; SEPARATE:             Content:         676F6F646279650060; SEPARATE-NEXT:      - SectionOffset:   6061; SEPARATE-NEXT:        InitFlags:       062; SEPARATE-NEXT:        Offset:63; SEPARATE:             Content:         '776861746576657200'64; SEPARATE-NEXT:      - SectionOffset:   7665; SEPARATE-NEXT:        InitFlags:       066; SEPARATE-NEXT:        Offset:67; SEPARATE:             Content:         2A00000068; SEPARATE-NEXT:  - Type:            CUSTOM69; SEPARATE-NEXT:    Name:            name70; SEPARATE-NEXT:    FunctionNames:71; SEPARATE-NEXT:      - Index:           072; SEPARATE-NEXT:        Name:            __wasm_call_ctors73; SEPARATE-NEXT:    GlobalNames:74; SEPARATE-NEXT:      - Index:           075; SEPARATE-NEXT:        Name:            __stack_pointer76; SEPARATE-NEXT:    DataSegmentNames:77; SEPARATE-NEXT:      - Index:           078; SEPARATE-NEXT:        Name:            .rodata79 80; RUN: wasm-ld -no-gc-sections --no-entry --shared-memory --max-memory=131072 -o %t.merged.passive.wasm %t.passive.o81; RUN: obj2yaml %t.merged.passive.wasm | FileCheck %s --check-prefix=PASSIVE-MERGE82; RUN: wasm-ld -mwasm64 -no-gc-sections --no-entry --shared-memory --max-memory=131072 -o %t.merged.passive64.wasm %t.passive64.o83; RUN: obj2yaml %t.merged.passive64.wasm | FileCheck %s --check-prefix=PASSIVE-MERGE84 85; PASSIVE-MERGE-LABEL: - Type:            DATACOUNT86; PASSIVE-MERGE-NEXT:    Count:           287; PASSIVE-MERGE-LABEL: - Type:            DATA88; PASSIVE-MERGE-NEXT:    Segments:89; PASSIVE-MERGE-NEXT:      - SectionOffset:   390; PASSIVE-MERGE-NEXT:        InitFlags:       191; PASSIVE-MERGE-NEXT:        Content:         636F6E7374616E74000000002B92; PASSIVE-MERGE-NEXT:      - SectionOffset:   1893; PASSIVE-MERGE-NEXT:        InitFlags:       194; PASSIVE-MERGE-NEXT:        Content:         68656C6C6F00676F6F6462796500776861746576657200002A00000095; PASSIVE-MERGE-NEXT:  - Type:            CUSTOM96; PASSIVE-MERGE-NEXT:    Name:            name97; PASSIVE-MERGE-NEXT:    FunctionNames:98; PASSIVE-MERGE-NEXT:      - Index:           099; PASSIVE-MERGE-NEXT:        Name:            __wasm_call_ctors100; PASSIVE-MERGE-NEXT:      - Index:           1101; PASSIVE-MERGE-NEXT:        Name:            __wasm_init_tls102; PASSIVE-MERGE-NEXT:      - Index:           2103; PASSIVE-MERGE-NEXT:        Name:            __wasm_init_memory104 105; RUN: wasm-ld -no-gc-sections --no-entry --shared-memory --max-memory=131072 --no-merge-data-segments -o %t.separate.passive.wasm %t.passive.o106; RUN: obj2yaml %t.separate.passive.wasm | FileCheck %s --check-prefix=PASSIVE-SEPARATE107; RUN: wasm-ld -mwasm64 -no-gc-sections --no-entry --shared-memory --max-memory=131072 --no-merge-data-segments -o %t.separate.passive64.wasm %t.passive64.o108; RUN: obj2yaml %t.separate.passive64.wasm | FileCheck %s --check-prefix=PASSIVE-SEPARATE109 110; PASSIVE-SEPARATE-LABEL: - Type:            DATACOUNT111; PASSIVE-SEPARATE-NEXT:    Count:           6112; PASSIVE-SEPARATE-LABEL: - Type:            DATA113; PASSIVE-SEPARATE-NEXT:    Segments:114; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   3115; PASSIVE-SEPARATE-NEXT:        InitFlags:       1116; PASSIVE-SEPARATE-NEXT:        Content:         636F6E7374616E7400117; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   14118; PASSIVE-SEPARATE-NEXT:        InitFlags:       1119; PASSIVE-SEPARATE-NEXT:        Content:         2B120; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   17121; PASSIVE-SEPARATE-NEXT:        InitFlags:       1122; PASSIVE-SEPARATE-NEXT:        Content:         68656C6C6F00123; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   25124; PASSIVE-SEPARATE-NEXT:        InitFlags:       1125; PASSIVE-SEPARATE-NEXT:        Content:         676F6F6462796500126; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   35127; PASSIVE-SEPARATE-NEXT:        InitFlags:       1128; PASSIVE-SEPARATE-NEXT:        Content:         '776861746576657200'129; PASSIVE-SEPARATE-NEXT:      - SectionOffset:   46130; PASSIVE-SEPARATE-NEXT:        InitFlags:       1131; PASSIVE-SEPARATE-NEXT:        Content:         2A000000132; PASSIVE-SEPARATE-NEXT:    - Type:            CUSTOM133; PASSIVE-SEPARATE-NEXT:      Name:            name134; PASSIVE-SEPARATE-NEXT:      FunctionNames:135; PASSIVE-SEPARATE-NEXT:        - Index:           0136; PASSIVE-SEPARATE-NEXT:          Name:            __wasm_call_ctors137; PASSIVE-SEPARATE-NEXT:        - Index:           1138; PASSIVE-SEPARATE-NEXT:          Name:            __wasm_init_tls139; PASSIVE-SEPARATE-NEXT:        - Index:           2140; PASSIVE-SEPARATE-NEXT:          Name:            __wasm_init_memory141