Copy the DWO and then cd into the output directory, so that the symbolizer would find the DWO if it attempted to. RUN: rm -rf %t && mkdir -p %t RUN: cd %t RUN: cp %p/Inputs/split-dwarf-no-skel-address.dwo %t RUN: llvm-symbolizer --inlining --no-demangle \ RUN: --obj=%p/Inputs/split-dwarf-no-skel-address.o 0x4 | FileCheck %s Built from the following source: void f1(); __attribute__((always_inline)) inline void f2() { f1(); } void f3() { f2(); } Compiled to assembly with clang, modified the skeleton CU to remove the high/low pc (& update the CU length field and abbrev to match) & then compile/objcopy to make the .o and .dwo. Ensure that the f2 inlined frame is not included - it's inefficient to have to go and load all the debug info and search for the address ranges, so assume that a lack of ranges on the CU means the CU covers no addresses. CHECK-NOT: _Z2f2v