Skip to content

Commit ef93c42

Browse files
authored
[Comgr] Fix memory leak in test. (#425)
2 parents c9f1d90 + d82e84f commit ef93c42

File tree

4 files changed

+15
-4
lines changed

4 files changed

+15
-4
lines changed

amd/comgr/test-lit/comgr-sources/unbundle.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ int main(int argc, char *argv[]) {
7373
amd_comgr_(destroy_action_info(DataAction));
7474
amd_comgr_(destroy_data_set(OutputBitcode));
7575
amd_comgr_(destroy_data_set(InputBundles));
76+
free(BundleData);
7677

7778
return 0;
7879
}

amd/comgr/test/file_map.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ int main(int argc, char *argv[]) {
4747
Status = amd_comgr_get_data(DataObject, &SliceLength, Slice);
4848
checkError(Status, "amd_comgr_get_data");
4949

50+
Status = amd_comgr_release_data(DataObject);
51+
checkError(Status, "amd_comgr_release_data");
52+
5053
if (SliceLength != Length - Offset) {
5154
fail("File Slice Length incorrect");
5255
}

amd/comgr/test/map_elf_virtual_address_test.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,9 @@ int main(int argc, char *argv[]) {
148148
}
149149

150150
// Test rocm 5.7 elf virtual address mapping
151+
amd_comgr_data_t DataExec2;
151152
Status = amd_comgr_action_data_get_data(
152-
DataSetExec, AMD_COMGR_DATA_KIND_EXECUTABLE, 1, &DataExec);
153+
DataSetExec, AMD_COMGR_DATA_KIND_EXECUTABLE, 1, &DataExec2);
153154
ElfVirtualAddress = 0x60;
154155
CodeObjectOffset = -1;
155156
// phdr.p_vaddr: 0
@@ -161,7 +162,7 @@ int main(int argc, char *argv[]) {
161162
// nobits = phdr.p_vaddr >= phdr.p_filesz
162163
// slizesize = phdr.p_memsz - (elfVirtualAddress - phdr.p_vaddr);
163164
Status = amd_comgr_map_elf_virtual_address_to_code_object_offset(
164-
DataExec, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
165+
DataExec2, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
165166
checkError(Status, "amd_comgr_map_elf_virtual_address_to_code_object_offset");
166167

167168
if (CodeObjectOffset != 0x60 || Nobits != 0 || SliceSize != 0x860) {
@@ -184,7 +185,7 @@ int main(int argc, char *argv[]) {
184185
// nobits = phdr.p_vaddr >= phdr.p_filesz
185186
// slizesize = phdr.p_memsz - (elfVirtualAddress - phdr.p_vaddr);
186187
Status = amd_comgr_map_elf_virtual_address_to_code_object_offset(
187-
DataExec, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
188+
DataExec2, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
188189
checkError(Status, "amd_comgr_map_elf_virtual_address_to_code_object_offset");
189190

190191
if (CodeObjectOffset != 0xa00 || Nobits != 0 || SliceSize != 0x480) {
@@ -207,7 +208,7 @@ int main(int argc, char *argv[]) {
207208
// nobits = phdr.p_vaddr >= phdr.p_filesz
208209
// slizesize = phdr.p_memsz - (elfVirtualAddress - phdr.p_vaddr);
209210
Status = amd_comgr_map_elf_virtual_address_to_code_object_offset(
210-
DataExec, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
211+
DataExec2, ElfVirtualAddress, &CodeObjectOffset, &SliceSize, &Nobits);
211212
checkError(Status, "amd_comgr_map_elf_virtual_address_to_code_object_offset");
212213

213214
if (CodeObjectOffset != 0xe90 || Nobits != 0 || SliceSize != 0x60) {
@@ -238,6 +239,8 @@ int main(int argc, char *argv[]) {
238239
checkError(Status, "amd_comgr_release_data");
239240
Status = amd_comgr_release_data(DataExec);
240241
checkError(Status, "amd_comgr_release_data");
242+
Status = amd_comgr_release_data(DataExec2);
243+
checkError(Status, "amd_comgr_release_data");
241244
Status = amd_comgr_destroy_data_set(DataSetExec);
242245
checkError(Status, "amd_comgr_destroy_data_set");
243246
free(BufSource1);

amd/comgr/test/name_expression_map_test.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,10 @@ int main(int argc, char *argv[]) {
376376
checkError(Status, "amd_comgr_release_data");
377377
Status = amd_comgr_release_data(DataExec);
378378
checkError(Status, "amd_comgr_release_data");
379+
Status = amd_comgr_release_data(DataExec2);
380+
checkError(Status, "amd_comgr_release_data");
381+
Status = amd_comgr_release_data(DataReloc2);
382+
checkError(Status, "amd_comgr_release_data");
379383
Status = amd_comgr_destroy_data_set(DataSetIn);
380384
checkError(Status, "amd_comgr_destroy_data_set");
381385
Status = amd_comgr_destroy_data_set(DataSetBc);

0 commit comments

Comments
 (0)