aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/tools/dsymutil
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/tools/dsymutil')
-rw-r--r--llvm/test/tools/dsymutil/AArch64/DWARFLinkerParallel/accel-imported-declarations.test (renamed from llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/accel-imported-declarations.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/accel-imported-declarations.test (renamed from llvm/test/tools/dsymutil/ARM/accel-imported-declarations.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/call-pc-reloc.test (renamed from llvm/test/tools/dsymutil/ARM/call-pc-reloc.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/debug-names-accel-table-types.ll (renamed from llvm/test/tools/dsymutil/ARM/debug-names-accel-table-types.ll)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/discriminator.test (renamed from llvm/test/tools/dsymutil/ARM/discriminator.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/discriminator_repeated.test (renamed from llvm/test/tools/dsymutil/ARM/discriminator_repeated.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dummy-debug-map-arm64.map (renamed from llvm/test/tools/dsymutil/ARM/dummy-debug-map-amr64.map)4
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dwarf5-addr-base.test (renamed from llvm/test/tools/dsymutil/ARM/dwarf5-addr-base.test)12
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dwarf5-addrx-0x0-last.test (renamed from llvm/test/tools/dsymutil/ARM/dwarf5-addrx-0x0-last.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dwarf5-dwarf4-combination-macho.test (renamed from llvm/test/tools/dsymutil/ARM/dwarf5-dwarf4-combination-macho.test)6
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dwarf5-macho.test (renamed from llvm/test/tools/dsymutil/ARM/dwarf5-macho.test)6
-rw-r--r--llvm/test/tools/dsymutil/AArch64/dwarf5-str-offsets-base-strx.test (renamed from llvm/test/tools/dsymutil/ARM/dwarf5-str-offsets-base-strx.test)14
-rw-r--r--llvm/test/tools/dsymutil/AArch64/extern-alias.test (renamed from llvm/test/tools/dsymutil/ARM/extern-alias.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/fat-arch-name.test (renamed from llvm/test/tools/dsymutil/ARM/fat-arch-name.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/fat-threading.test (renamed from llvm/test/tools/dsymutil/ARM/fat-threading.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/firmware.test (renamed from llvm/test/tools/dsymutil/ARM/firmware.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/inline-source.test (renamed from llvm/test/tools/dsymutil/ARM/inline-source.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/inlined-low_pc.c (renamed from llvm/test/tools/dsymutil/ARM/inlined-low_pc.c)8
-rw-r--r--llvm/test/tools/dsymutil/AArch64/lit.local.cfg10
-rw-r--r--llvm/test/tools/dsymutil/AArch64/missing-object-warning.test (renamed from llvm/test/tools/dsymutil/ARM/missing-object-warning.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/missing-symbol-warning.test (renamed from llvm/test/tools/dsymutil/ARM/missing-symbol-warning.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test28
-rw-r--r--llvm/test/tools/dsymutil/AArch64/preload.test (renamed from llvm/test/tools/dsymutil/ARM/preload.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle-empty.test (renamed from llvm/test/tools/dsymutil/ARM/remarks-linking-bundle-empty.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle.test (renamed from llvm/test/tools/dsymutil/ARM/remarks-linking-bundle.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/static-archive-collision.test (renamed from llvm/test/tools/dsymutil/ARM/static-archive-collision.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/stmt-seq-macho.test (renamed from llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/suppressions.txt2
-rw-r--r--llvm/test/tools/dsymutil/AArch64/swiftmodule-include-from-interface.test33
-rw-r--r--llvm/test/tools/dsymutil/AArch64/swiftmodule.test (renamed from llvm/test/tools/dsymutil/ARM/swiftmodule.test)0
-rw-r--r--llvm/test/tools/dsymutil/AArch64/typedefs-with-same-name.test41
-rw-r--r--llvm/test/tools/dsymutil/ARM/lit.local.cfg2
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.obin0 -> 2416 bytes
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.obin0 -> 2416 bytes
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp5
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h3
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp5
-rw-r--r--llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp6
-rw-r--r--llvm/test/tools/dsymutil/Inputs/typedefs-with-same-name.obin0 -> 2080 bytes
-rw-r--r--llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-fwd-declaration.test8
-rw-r--r--llvm/test/tools/dsymutil/cmdline.test1
41 files changed, 165 insertions, 29 deletions
diff --git a/llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/accel-imported-declarations.test b/llvm/test/tools/dsymutil/AArch64/DWARFLinkerParallel/accel-imported-declarations.test
index 29c0d45..29c0d45 100644
--- a/llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/accel-imported-declarations.test
+++ b/llvm/test/tools/dsymutil/AArch64/DWARFLinkerParallel/accel-imported-declarations.test
diff --git a/llvm/test/tools/dsymutil/ARM/accel-imported-declarations.test b/llvm/test/tools/dsymutil/AArch64/accel-imported-declarations.test
index 8afbe34..8afbe34 100644
--- a/llvm/test/tools/dsymutil/ARM/accel-imported-declarations.test
+++ b/llvm/test/tools/dsymutil/AArch64/accel-imported-declarations.test
diff --git a/llvm/test/tools/dsymutil/ARM/call-pc-reloc.test b/llvm/test/tools/dsymutil/AArch64/call-pc-reloc.test
index 1636f08..1636f08 100644
--- a/llvm/test/tools/dsymutil/ARM/call-pc-reloc.test
+++ b/llvm/test/tools/dsymutil/AArch64/call-pc-reloc.test
diff --git a/llvm/test/tools/dsymutil/ARM/debug-names-accel-table-types.ll b/llvm/test/tools/dsymutil/AArch64/debug-names-accel-table-types.ll
index 7811942..7811942 100644
--- a/llvm/test/tools/dsymutil/ARM/debug-names-accel-table-types.ll
+++ b/llvm/test/tools/dsymutil/AArch64/debug-names-accel-table-types.ll
diff --git a/llvm/test/tools/dsymutil/ARM/discriminator.test b/llvm/test/tools/dsymutil/AArch64/discriminator.test
index 5d25878..5d25878 100644
--- a/llvm/test/tools/dsymutil/ARM/discriminator.test
+++ b/llvm/test/tools/dsymutil/AArch64/discriminator.test
diff --git a/llvm/test/tools/dsymutil/ARM/discriminator_repeated.test b/llvm/test/tools/dsymutil/AArch64/discriminator_repeated.test
index 1c4dfc1..1c4dfc1 100644
--- a/llvm/test/tools/dsymutil/ARM/discriminator_repeated.test
+++ b/llvm/test/tools/dsymutil/AArch64/discriminator_repeated.test
diff --git a/llvm/test/tools/dsymutil/ARM/dummy-debug-map-amr64.map b/llvm/test/tools/dsymutil/AArch64/dummy-debug-map-arm64.map
index 50d8602..bd2b201 100644
--- a/llvm/test/tools/dsymutil/ARM/dummy-debug-map-amr64.map
+++ b/llvm/test/tools/dsymutil/AArch64/dummy-debug-map-arm64.map
@@ -11,9 +11,13 @@ objects:
- filename: 1.o
symbols:
- { sym: _bar, objAddr: 0x0, binAddr: 0x10000, size: 0x10 }
+ - { sym: __Z13lib1_internalv, objAddr: 0x0, binAddr: 0x10020, size: 0x20 }
+ - { sym: __ZN3Foo4funcIZ13lib1_internalvE3$_0EEvv, objAddr: 0x0, binAddr: 0x10040, size: 0x20 }
- filename: 2.o
symbols:
- { sym: __Z3foov, objAddr: 0x0, binAddr: 0x20000, size: 0x10 }
+ - { sym: __Z13lib1_internalv, objAddr: 0x0, binAddr: 0x20020, size: 0x20 }
+ - { sym: __ZN3Foo4funcIZ13lib1_internalvE3$_0EEvv, objAddr: 0x0, binAddr: 0x20040, size: 0x20 }
- filename: 3.o
symbols:
- { sym: __Z3foov, objAddr: 0x0, binAddr: 0x30000, size: 0x10 }
diff --git a/llvm/test/tools/dsymutil/ARM/dwarf5-addr-base.test b/llvm/test/tools/dsymutil/AArch64/dwarf5-addr-base.test
index dfcfa67..ebb2378 100644
--- a/llvm/test/tools/dsymutil/ARM/dwarf5-addr-base.test
+++ b/llvm/test/tools/dsymutil/AArch64/dwarf5-addr-base.test
@@ -46,17 +46,17 @@
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
+RUN: dsymutil -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | FileCheck %s
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | FileCheck %s
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
@@ -64,18 +64,18 @@ RUN: FileCheck %s --check-prefixes=CHECK,CHECK-LLVM
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --update -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
+RUN: dsymutil --update -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | FileCheck %s --check-prefix=UPD
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel --no-odr --update -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --no-odr --update -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
RUN: FileCheck %s --check-prefix=UPD
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel --update -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --update -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
diff --git a/llvm/test/tools/dsymutil/ARM/dwarf5-addrx-0x0-last.test b/llvm/test/tools/dsymutil/AArch64/dwarf5-addrx-0x0-last.test
index c9d1560..c9d1560 100644
--- a/llvm/test/tools/dsymutil/ARM/dwarf5-addrx-0x0-last.test
+++ b/llvm/test/tools/dsymutil/AArch64/dwarf5-addrx-0x0-last.test
diff --git a/llvm/test/tools/dsymutil/ARM/dwarf5-dwarf4-combination-macho.test b/llvm/test/tools/dsymutil/AArch64/dwarf5-dwarf4-combination-macho.test
index fb15f46..8c42cd5 100644
--- a/llvm/test/tools/dsymutil/ARM/dwarf5-dwarf4-combination-macho.test
+++ b/llvm/test/tools/dsymutil/AArch64/dwarf5-dwarf4-combination-macho.test
@@ -30,11 +30,11 @@
; clang -g -c -O1 b.cpp -gdwarf-4 -o 2.o
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5-DWARF4-combination -o %t.dir/dwarf5-dwarf4-combination-macho.dSYM
+RUN: dsymutil -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5-DWARF4-combination -o %t.dir/dwarf5-dwarf4-combination-macho.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-dwarf4-combination-macho.dSYM -a --verbose | FileCheck %s --check-prefixes=CHECK,WITH-PARENTS
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --no-odr --linker parallel -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --no-odr --linker parallel -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-DWARF4-combination \
RUN: -o %t.dir/dwarf5-dwarf4-combination-macho.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-dwarf4-combination-macho.dSYM \
@@ -43,7 +43,7 @@ RUN: -a --verbose | FileCheck %s --check-prefixes=CHECK,NO-PARENTS
### Uncomment following when llvm-dwarfdump will dump address ranges
### correctly for severall compile units case.
COM: rm -rf %t.dir && mkdir -p %t.dir
-COM: dsymutil --linker parallel -y %p/dummy-debug-map-amr64.map \
+COM: dsymutil --linker parallel -y %p/dummy-debug-map-arm64.map \
COM: -oso-prepend-path=%p/../Inputs/DWARF5-DWARF4-combination \
COM: -o %t.dir/dwarf5-dwarf4-combination-macho.dSYM
COM: llvm-dwarfdump %t.dir/dwarf5-dwarf4-combination-macho.dSYM \
diff --git a/llvm/test/tools/dsymutil/ARM/dwarf5-macho.test b/llvm/test/tools/dsymutil/AArch64/dwarf5-macho.test
index 08c8bba..f90f597 100644
--- a/llvm/test/tools/dsymutil/ARM/dwarf5-macho.test
+++ b/llvm/test/tools/dsymutil/AArch64/dwarf5-macho.test
@@ -18,18 +18,18 @@
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5 -o %t.dir/dwarf5-macho.dSYM
+RUN: dsymutil -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5 -o %t.dir/dwarf5-macho.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-macho.dSYM -a --verbose | FileCheck %s
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5 -o %t.dir/dwarf5-macho.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-macho.dSYM -a --verbose | FileCheck %s
### Uncomment following when llvm-dwarfdump will print resolved address ranges
### for the case mutiplue compile units.
COM: rm -rf %t.dir && mkdir -p %t.dir
-COM: dsymutil --linker parallel -y %p/dummy-debug-map-amr64.map \
+COM: dsymutil --linker parallel -y %p/dummy-debug-map-arm64.map \
COM: -oso-prepend-path=%p/../Inputs/DWARF5 -o %t.dir/dwarf5-macho.dSYM
COM: llvm-dwarfdump %t.dir/dwarf5-macho.dSYM -a --verbose | FileCheck %s \
COM: --check-prefixes=CHECK,CHECK-LLVM
diff --git a/llvm/test/tools/dsymutil/ARM/dwarf5-str-offsets-base-strx.test b/llvm/test/tools/dsymutil/AArch64/dwarf5-str-offsets-base-strx.test
index 4e6c666..c5110a8 100644
--- a/llvm/test/tools/dsymutil/ARM/dwarf5-str-offsets-base-strx.test
+++ b/llvm/test/tools/dsymutil/AArch64/dwarf5-str-offsets-base-strx.test
@@ -50,33 +50,33 @@
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
+RUN: dsymutil -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | FileCheck %s --check-prefixes=CHECK,GLOBAL
-RUN: dsymutil --update -y %p/dummy-debug-map-amr64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
+RUN: dsymutil --update -y %p/dummy-debug-map-arm64.map -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | FileCheck %s --check-prefixes=UPD,GLOBALUPD
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --no-odr -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
RUN: FileCheck %s --check-prefixes=CHECK,LOCAL
RUN: rm -rf %t.dir && mkdir -p %t.dir
-RUN: dsymutil --linker parallel -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
RUN: FileCheck %s --check-prefixes=CHECK,LOCAL,CHECK-LLVM
-RUN: dsymutil --linker parallel --no-odr --update -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --no-odr --update -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
RUN: FileCheck %s --check-prefixes=UPD,LOCALUPD
-RUN: dsymutil --linker parallel --update -y %p/dummy-debug-map-amr64.map \
+RUN: dsymutil --linker parallel --update -y %p/dummy-debug-map-arm64.map \
RUN: -oso-prepend-path=%p/../Inputs/DWARF5-addr-base-str-off-base \
RUN: -o %t.dir/dwarf5-addr-base.dSYM
RUN: llvm-dwarfdump %t.dir/dwarf5-addr-base.dSYM -a --verbose | \
@@ -98,7 +98,7 @@ CHECK: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x000000
CHECK: DW_AT_comp_dir [DW_FORM_strx] (indexed (00000004) string = "/Users/shubham/Development/test109275485")
CHECK: DW_TAG_subprogram
-CHECK: DW_AT_low_pc [DW_FORM_addrx] (indexed (00000000) address = 0x0000000000010000)
+CHECK: DW_AT_low_pc [DW_FORM_addrx] (indexed (00000000) address = 0x0000000000010040)
CHECK: DW_AT_linkage_name [DW_FORM_strx] (indexed (00000005) string = "_Z4foo2i")
CHECK: DW_AT_name [DW_FORM_strx] (indexed (00000006) string = "foo2")
diff --git a/llvm/test/tools/dsymutil/ARM/extern-alias.test b/llvm/test/tools/dsymutil/AArch64/extern-alias.test
index 5764063..5764063 100644
--- a/llvm/test/tools/dsymutil/ARM/extern-alias.test
+++ b/llvm/test/tools/dsymutil/AArch64/extern-alias.test
diff --git a/llvm/test/tools/dsymutil/ARM/fat-arch-name.test b/llvm/test/tools/dsymutil/AArch64/fat-arch-name.test
index 1fdcc06..1fdcc06 100644
--- a/llvm/test/tools/dsymutil/ARM/fat-arch-name.test
+++ b/llvm/test/tools/dsymutil/AArch64/fat-arch-name.test
diff --git a/llvm/test/tools/dsymutil/ARM/fat-threading.test b/llvm/test/tools/dsymutil/AArch64/fat-threading.test
index acb1175..acb1175 100644
--- a/llvm/test/tools/dsymutil/ARM/fat-threading.test
+++ b/llvm/test/tools/dsymutil/AArch64/fat-threading.test
diff --git a/llvm/test/tools/dsymutil/ARM/firmware.test b/llvm/test/tools/dsymutil/AArch64/firmware.test
index 128faa50a..128faa50a 100644
--- a/llvm/test/tools/dsymutil/ARM/firmware.test
+++ b/llvm/test/tools/dsymutil/AArch64/firmware.test
diff --git a/llvm/test/tools/dsymutil/ARM/inline-source.test b/llvm/test/tools/dsymutil/AArch64/inline-source.test
index e1c552f..e1c552f 100644
--- a/llvm/test/tools/dsymutil/ARM/inline-source.test
+++ b/llvm/test/tools/dsymutil/AArch64/inline-source.test
diff --git a/llvm/test/tools/dsymutil/ARM/inlined-low_pc.c b/llvm/test/tools/dsymutil/AArch64/inlined-low_pc.c
index ad48b59..b89a6f9 100644
--- a/llvm/test/tools/dsymutil/ARM/inlined-low_pc.c
+++ b/llvm/test/tools/dsymutil/AArch64/inlined-low_pc.c
@@ -3,17 +3,17 @@
static int foo(int i) { return 42 + i; }
int bar(int a) { return foo(a); }
-// RUN: dsymutil -f -y %p/dummy-debug-map-amr64.map -oso-prepend-path %p/../Inputs/inlined-low_pc -o - | llvm-dwarfdump - | FileCheck %s
+// RUN: dsymutil -f -y %p/dummy-debug-map-arm64.map -oso-prepend-path %p/../Inputs/inlined-low_pc -o - | llvm-dwarfdump - | FileCheck %s
-// RUN: dsymutil --linker parallel -f -y %p/dummy-debug-map-amr64.map \
+// RUN: dsymutil --linker parallel -f -y %p/dummy-debug-map-arm64.map \
// RUN: -oso-prepend-path %p/../Inputs/inlined-low_pc -o - | \
// RUN: llvm-dwarfdump - | FileCheck %s
// CHECK: DW_TAG_subprogram
-// CHECK: DW_AT_low_pc{{.*}}0x0000000000010000
+// CHECK: DW_AT_low_pc{{.*}}0x0000000000010040
// CHECK: DW_AT_name{{.*}}"bar"
// CHECK-NOT: NULL
// CHECK: DW_TAG_inlined_subroutine
// CHECK-NEXT: DW_AT_abstract_origin{{.*}}"foo"
-// CHECK-NEXT: DW_AT_low_pc{{.*}}0x0000000000010000
+// CHECK-NEXT: DW_AT_low_pc{{.*}}0x0000000000010040
diff --git a/llvm/test/tools/dsymutil/AArch64/lit.local.cfg b/llvm/test/tools/dsymutil/AArch64/lit.local.cfg
new file mode 100644
index 0000000..923d126
--- /dev/null
+++ b/llvm/test/tools/dsymutil/AArch64/lit.local.cfg
@@ -0,0 +1,10 @@
+if not "AArch64" in config.root.targets:
+ config.unsupported = True
+
+if config.llvm_use_sanitizer:
+ suppr = os.path.join(
+ os.path.dirname(os.path.realpath(__file__)), "suppressions.txt"
+ )
+ config.environment["LSAN_OPTIONS"] = "suppressions={}".format(suppr)
+
+config.suffixes = [".test", ".cpp", ".c"]
diff --git a/llvm/test/tools/dsymutil/ARM/missing-object-warning.test b/llvm/test/tools/dsymutil/AArch64/missing-object-warning.test
index 62b3ecb..62b3ecb 100644
--- a/llvm/test/tools/dsymutil/ARM/missing-object-warning.test
+++ b/llvm/test/tools/dsymutil/AArch64/missing-object-warning.test
diff --git a/llvm/test/tools/dsymutil/ARM/missing-symbol-warning.test b/llvm/test/tools/dsymutil/AArch64/missing-symbol-warning.test
index 1de805d..1de805d 100644
--- a/llvm/test/tools/dsymutil/ARM/missing-symbol-warning.test
+++ b/llvm/test/tools/dsymutil/AArch64/missing-symbol-warning.test
diff --git a/llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test b/llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test
new file mode 100644
index 0000000..b6edb8b
--- /dev/null
+++ b/llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test
@@ -0,0 +1,28 @@
+# Tests the case where a DW_TAG_subprogram for a method declaration
+# got uniqued into a DW_TAG_subprogram with the same linkage name (but
+# different DW_AT_name). Make sure the DW_TAG_subprogram DIE for the
+# definition, which previously pointed to the now de-deduplicated declaration,
+# gets inserted into the .debug_names table using the DW_AT_name of the canonical
+# declaration DW_TAG_subprogram.
+#
+# Object files compiled as follows:
+# clang -g -c -o 1.o Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp
+# clang -g -c -o 2.o Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp
+
+# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing-DW_AT_name-conflict -y %p/dummy-debug-map-arm64.map -o - \
+# RUN: | llvm-dwarfdump --verify - | FileCheck %s
+
+# RUN: dsymutil --linker parallel -f -oso-prepend-path=%p/../Inputs/odr-uniquing-DW_AT_name-conflict -y %p/dummy-debug-map-arm64.map -o - \
+# RUN: | not llvm-dwarfdump --verify - | FileCheck %s --check-prefix=PARALLEL-ODR
+
+# RUN: dsymutil -f -oso-prepend-path=%p/../Inputs/odr-uniquing-DW_AT_name-conflict -y %p/dummy-debug-map-arm64.map -no-odr -o - \
+# RUN: | llvm-dwarfdump --verify - | FileCheck %s
+
+# RUN: dsymutil --linker parallel -f -oso-prepend-path=%p/../Inputs/odr-uniquing-DW_AT_name-conflict -y %p/dummy-debug-map-arm64.map -no-odr -o - \
+# RUN: | llvm-dwarfdump --verify - | FileCheck %s
+
+# CHECK: No errors.
+
+# FIXME: parallel DWARFLinker uses wrong DW_AT_name when inserting uniqued subprogram into .debug_names
+# PARALLEL-ODR: Verifying .debug_names...
+# PARALLEL-ODR-NEXT: error: Name Index {{.*}} mismatched Name of DIE
diff --git a/llvm/test/tools/dsymutil/ARM/preload.test b/llvm/test/tools/dsymutil/AArch64/preload.test
index 2c45220..2c45220 100644
--- a/llvm/test/tools/dsymutil/ARM/preload.test
+++ b/llvm/test/tools/dsymutil/AArch64/preload.test
diff --git a/llvm/test/tools/dsymutil/ARM/remarks-linking-bundle-empty.test b/llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle-empty.test
index 0a89fa1..0a89fa1 100644
--- a/llvm/test/tools/dsymutil/ARM/remarks-linking-bundle-empty.test
+++ b/llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle-empty.test
diff --git a/llvm/test/tools/dsymutil/ARM/remarks-linking-bundle.test b/llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle.test
index e1b0445..e1b0445 100644
--- a/llvm/test/tools/dsymutil/ARM/remarks-linking-bundle.test
+++ b/llvm/test/tools/dsymutil/AArch64/remarks-linking-bundle.test
diff --git a/llvm/test/tools/dsymutil/ARM/static-archive-collision.test b/llvm/test/tools/dsymutil/AArch64/static-archive-collision.test
index 55fd5e6..55fd5e6 100644
--- a/llvm/test/tools/dsymutil/ARM/static-archive-collision.test
+++ b/llvm/test/tools/dsymutil/AArch64/static-archive-collision.test
diff --git a/llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test b/llvm/test/tools/dsymutil/AArch64/stmt-seq-macho.test
index db223cd..db223cd 100644
--- a/llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test
+++ b/llvm/test/tools/dsymutil/AArch64/stmt-seq-macho.test
diff --git a/llvm/test/tools/dsymutil/AArch64/suppressions.txt b/llvm/test/tools/dsymutil/AArch64/suppressions.txt
new file mode 100644
index 0000000..0a43d44
--- /dev/null
+++ b/llvm/test/tools/dsymutil/AArch64/suppressions.txt
@@ -0,0 +1,2 @@
+# Ignore leaks in CoreFoundation.
+leak:CF
diff --git a/llvm/test/tools/dsymutil/AArch64/swiftmodule-include-from-interface.test b/llvm/test/tools/dsymutil/AArch64/swiftmodule-include-from-interface.test
new file mode 100644
index 0000000..00141f12
--- /dev/null
+++ b/llvm/test/tools/dsymutil/AArch64/swiftmodule-include-from-interface.test
@@ -0,0 +1,33 @@
+# RUN: dsymutil -include-swiftmodules-from-interface -verbose -oso-prepend-path=%p -y -o %t.dSYM %s | FileCheck %s
+#
+# RUN: dsymutil -include-swiftmodules-from-interface --linker parallel -verbose -oso-prepend-path=%p -y %s -o %t-parallel.dSYM | FileCheck %s
+#
+# To regenerate:
+# echo ''>I.swift
+# echo ''>B.swift
+# echo 'import I'>main.swift
+# xcrun swiftc -emit-module-interface-path I.swiftinterface -enable-library-evolution I.swift
+# xcrun swiftc -emit-module-path B.swiftmodule B.swift -Xfrontend -no-serialize-debugging-options
+# xcrun swiftc -explicit-module-build main.swift -I. -module-cache-path cache -g -Xfrontend -no-serialize-debugging-options
+# output is "B.swiftmodule" and "cache/I*.swiftmodule"
+#
+# CHECK-NOT: Skipping compiled textual Swift interface: {{.*}}/Inputs/Binary.swiftmodule
+# CHECK-NOT: Skipping compiled textual Swift interface: {{.*}}/Inputs/FromInterface.swiftmodule
+
+#
+---
+triple: 'arm64-apple-darwin'
+objects:
+ - filename: '../Inputs/Binary.swiftmodule'
+ timestamp: 0
+ type: 50
+ symbols: []
+ - filename: '../Inputs/FromInterface.swiftmodule'
+ timestamp: 0
+ type: 50
+ symbols: []
+ - filename: '../Inputs/FromInterface.swiftmodule'
+ timestamp: 0
+ type: 50
+ symbols: []
+...
diff --git a/llvm/test/tools/dsymutil/ARM/swiftmodule.test b/llvm/test/tools/dsymutil/AArch64/swiftmodule.test
index 31b3926..31b3926 100644
--- a/llvm/test/tools/dsymutil/ARM/swiftmodule.test
+++ b/llvm/test/tools/dsymutil/AArch64/swiftmodule.test
diff --git a/llvm/test/tools/dsymutil/AArch64/typedefs-with-same-name.test b/llvm/test/tools/dsymutil/AArch64/typedefs-with-same-name.test
new file mode 100644
index 0000000..cef40b4
--- /dev/null
+++ b/llvm/test/tools/dsymutil/AArch64/typedefs-with-same-name.test
@@ -0,0 +1,41 @@
+#RUN: dsymutil --linker=parallel -f -oso-prepend-path=%p/../Inputs/ -y %s -o %t.dwarf
+#RUN: llvm-dwarfdump %t.dwarf | FileCheck %s
+
+# There should be two typedef DIE named "BarInt" in the resultant .dwarf file.
+# The second should refer to the first, which refer to "Foo<int>".
+# CHECK: 0x[[FIRST_BARINT_ADDR:[0-9a-f]*]]: DW_TAG_typedef
+# CHECK-NEXT: DW_AT_type (0x{{([[:xdigit:]]*)}} "Foo<int>")
+# CHECK-NEXT: DW_AT_name ("BarInt")
+# CHECK: 0x{{([[:xdigit:]]*)}}: DW_TAG_typedef
+# CHECK-NEXT: DW_AT_type (0x[[FIRST_BARINT_ADDR]] "BarInt")
+# CHECK-NEXT: DW_AT_name ("BarInt")
+
+# Source:
+#
+# template <typename T> struct Foo;
+# typedef Foo<int> BarInt;
+# template <typename T>
+# struct [[clang::preferred_name(BarInt)]] Foo{};
+# int main() {
+# BarInt barInt;
+# return 0;
+# }
+#
+# Compile with:
+#
+# $ clang++ -g -O0 -c typedefs-with-same-name.cpp -o typedefs-with-same-name.o
+#
+# To generate the debug map:
+#
+# $ clang++ typedefs-with-same-name.o -o typedefs-with-same-name
+# $ dsymutil -dump-debug-map typedefs-with-same-name
+
+---
+triple: 'arm64-apple-darwin'
+objects:
+ - filename: '/typedefs-with-same-name.o'
+ timestamp: 1762438746
+ type: 102
+ symbols:
+ - { sym: _main, objAddr: 0x0, binAddr: 0x100000360, size: 0x14 }
+...
diff --git a/llvm/test/tools/dsymutil/ARM/lit.local.cfg b/llvm/test/tools/dsymutil/ARM/lit.local.cfg
index d951f4f..6c4647c 100644
--- a/llvm/test/tools/dsymutil/ARM/lit.local.cfg
+++ b/llvm/test/tools/dsymutil/ARM/lit.local.cfg
@@ -1,7 +1,5 @@
if not "ARM" in config.root.targets:
config.unsupported = True
-if not "AArch64" in config.root.targets:
- config.unsupported = True
if config.llvm_use_sanitizer:
suppr = os.path.join(
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.o b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.o
new file mode 100644
index 0000000..5932a3c
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.o
Binary files differ
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.o b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.o
new file mode 100644
index 0000000..607b470
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.o
Binary files differ
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp
new file mode 100644
index 0000000..4cf90f0
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp
@@ -0,0 +1,5 @@
+#include "lib1.h"
+
+[[gnu::weak]] void lib1_internal() {
+ Foo{}.func<decltype([]{})>();
+}
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h
new file mode 100644
index 0000000..3b3cefb
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h
@@ -0,0 +1,3 @@
+struct Foo {
+ template<typename T> void func() {}
+};
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp
new file mode 100644
index 0000000..4cf90f0
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp
@@ -0,0 +1,5 @@
+#include "lib1.h"
+
+[[gnu::weak]] void lib1_internal() {
+ Foo{}.func<decltype([]{})>();
+}
diff --git a/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp
new file mode 100644
index 0000000..77f2cc4
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp
@@ -0,0 +1,6 @@
+[[gnu::weak]] void lib1_internal();
+
+int main() {
+ lib1_internal();
+ __builtin_debugtrap();
+}
diff --git a/llvm/test/tools/dsymutil/Inputs/typedefs-with-same-name.o b/llvm/test/tools/dsymutil/Inputs/typedefs-with-same-name.o
new file mode 100644
index 0000000..6cc47c1
--- /dev/null
+++ b/llvm/test/tools/dsymutil/Inputs/typedefs-with-same-name.o
Binary files differ
diff --git a/llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-fwd-declaration.test b/llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-fwd-declaration.test
index d028194..fd15ce3 100644
--- a/llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-fwd-declaration.test
+++ b/llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-fwd-declaration.test
@@ -35,14 +35,14 @@ void foo() { Sptrptr ptr1 = 0; }
// CHECK: DW_TAG_member
// CHECK-NEXT: DW_AT_name{{.*}}"field"
-// CHECK: 0x[[TYPEDEF_PTR_S]]: DW_TAG_typedef
-// CHECK-NEXT: DW_AT_type{{.*}}{0x[[PTR_S]]} "S *"
-// CHECK-NEXT: DW_AT_name{{.*}}"Sptr"
-
// CHECK: 0x[[TYPEDEF_PTR_PTR_S:[a-f0-9]*]]: DW_TAG_typedef
// CHECK-NEXT: DW_AT_type{{.*}}{0x[[PTR_PTR_S]]} "Sptr *"
// CHECK-NEXT: DW_AT_name{{.*}}"Sptrptr"
+// CHECK: 0x[[TYPEDEF_PTR_S]]: DW_TAG_typedef
+// CHECK-NEXT: DW_AT_type{{.*}}{0x[[PTR_S]]} "S *"
+// CHECK-NEXT: DW_AT_name{{.*}}"Sptr"
+
// First we confirm that first compile unit properly references type.
//
// CHECK: DW_TAG_compile_unit
diff --git a/llvm/test/tools/dsymutil/cmdline.test b/llvm/test/tools/dsymutil/cmdline.test
index 1574fe3..0b0bce1 100644
--- a/llvm/test/tools/dsymutil/cmdline.test
+++ b/llvm/test/tools/dsymutil/cmdline.test
@@ -14,6 +14,7 @@ CHECK: -fat64
CHECK: -flat
CHECK: -gen-reproducer
CHECK: -help
+CHECK: -include-swiftmodules-from-interface
CHECK: -keep-function-for-static
CHECK: -no-object-timestamp
CHECK: -no-odr