[ORC] Add std::tuple support to SimplePackedSerialization.
[llvm-project.git] / llvm / test / tools / llvm-objcopy / wasm / add-section.test
blob2f32eaca0ac46225184b99cc1943eb5a0fed7376
1 ## Test --add-section. This test dumps and removes the section first and checks
2 ## that adding it back doesn't change the result.
3 # RUN: yaml2obj %s -o %t
4 # RUN: llvm-objcopy --dump-section=producers=%t.sec --remove-section=producers %t %t2
5 # RUN: llvm-objcopy --add-section=producers=%t.sec %t2 %t3
6 # RUN: obj2yaml %t3 | FileCheck %s
8 ## Check that the producers section has been added back unchanged.
9 # CHECK:      Name: producers
10 # CHECK-NEXT: Tools:
11 # CHECK-NEXT:  - Name:    clang
12 # CHECK-NEXT:    Version: 9.0.0
14 # Check that the section is replaced with new content in one invocation.
15 # RUN: echo "123" > %t4
16 # RUN: llvm-objcopy --remove-section=foo --add-section=foo=%t4 %t %t5
17 # RUN: obj2yaml %t5 | FileCheck %s --check-prefix=REPLACE
19 # REPLACE: - Type:  CUSTOM
20 # REPLACE:   Name:    foo
21 # REPLACE:   Payload: 3132330A
23 --- !WASM
24 FileHeader:
25   Version: 0x00000001
26 Sections:
27   - Type: TYPE
28     Signatures:
29       - Index: 0
30         ParamTypes:
31           - I32
32         ReturnTypes:
33           - F32
34       - Index: 1
35         ParamTypes:
36           - I32
37           - I64
38         ReturnTypes: []
39   - Type: FUNCTION
40     FunctionTypes:
41       - 0
42       - 1
43   - Type: CODE
44     Relocations:
45       - Type: R_WASM_TABLE_INDEX_SLEB
46         Index: 0
47         Offset: 0x00000000
48       - Type: R_WASM_FUNCTION_INDEX_LEB
49         Index: 1
50         Offset: 0x0000000
51     Functions:
52       - Index: 0
53         Locals:
54          - Type: I32
55            Count: 3
56         Body: 010101010B
57       - Index: 1
58         Locals:
59          - Type:  I32
60            Count: 1
61         Body: 010101010B
62   - Type: CUSTOM
63     Name: linking
64     Version: 2
65     SymbolTable:
66       - Index:    0
67         Kind:     FUNCTION
68         Name:     func1
69         Flags:    [  ]
70         Function: 0
71       - Index:    1
72         Kind:     FUNCTION
73         Name:     func2
74         Flags:    [  ]
75         Function: 1
76   - Type: CUSTOM
77     Name: producers
78     Tools:
79       - Name:   clang
80         Version: 9.0.0
81   - Type: CUSTOM
82     Name: foo
83     Payload: ABC123