Revert "[LLDB] Use path relative to binary for finding .dwo files."

This reverts commit b241f3cb292d0ba1ad5a33b3bbd4a8a3a9c909dc.

Test case is breaking windows builder.

GitOrigin-RevId: 042668d092bb585e526023027faee8d28f968a76
diff --git a/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
index da17038..3a04f42 100644
--- a/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
+++ b/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
@@ -1651,13 +1651,6 @@
       return nullptr;
 
     dwo_file.SetFile(comp_dir, FileSpec::Style::native);
-    if (dwo_file.IsRelative()) {
-      // if DW_AT_comp_dir is relative, it should be relative to the location
-      // of the executable, not to the location from which the debugger was
-      // launched.
-      dwo_file.PrependPathComponent(
-          m_objfile_sp->GetFileSpec().GetDirectory().GetStringRef());
-    }
     FileSystem::Instance().Resolve(dwo_file);
     dwo_file.AppendPathComponent(dwo_name);
   }
diff --git a/test/Shell/SymbolFile/DWARF/dwo-relative-path.s b/test/Shell/SymbolFile/DWARF/dwo-relative-path.s
deleted file mode 100644
index cc05434..0000000
--- a/test/Shell/SymbolFile/DWARF/dwo-relative-path.s
+++ /dev/null
@@ -1,417 +0,0 @@
-# Test to verify LLDB searches for dwos with relative paths relative to the
-# binary location, not relative to LLDB's launch location.
-
-# RUN: llvm-mc --filetype=obj --triple x86_64-pc-linux %s -o %t.o
-# RUN: llvm-objcopy --split-dwo=%T/dwo-relative-path.dwo %t.o
-
-# RUN: cd ../..
-
-# RUN: %lldb %t.o -o "target var x" -b 2>&1 | FileCheck %s
-
-# CHECK: x = 0
-
-	.text
-	.file	"dwo-relative-path.cpp"
-	.file	0 "." "dwo-relative-path.cpp" md5 0xadc61d242247514c5d402d62db34b825
-	.globl	main                            # -- Begin function main
-	.p2align	4, 0x90
-	.type	main,@function
-main:                                   # @main
-.Lfunc_begin0:
-	.loc	0 14 0                          # dwo-relative-path.cpp:14:0
-	.cfi_startproc
-# %bb.0:                                # %entry
-	pushq	%rbp
-	.cfi_def_cfa_offset 16
-	.cfi_offset %rbp, -16
-	movq	%rsp, %rbp
-	.cfi_def_cfa_register %rbp
-	movl	$0, -4(%rbp)
-	movl	%edi, -8(%rbp)
-	movq	%rsi, -16(%rbp)
-.Ltmp0:
-	.loc	0 15 8 prologue_end             # dwo-relative-path.cpp:15:8
-	movw	.L__const.main.y, %ax
-	movw	%ax, -19(%rbp)
-	movb	.L__const.main.y+2, %al
-	movb	%al, -17(%rbp)
-	.loc	0 17 14                         # dwo-relative-path.cpp:17:14
-	movsbl	-19(%rbp), %eax
-	.loc	0 17 27 is_stmt 0               # dwo-relative-path.cpp:17:27
-	movsbl	-18(%rbp), %ecx
-	.loc	0 17 19                         # dwo-relative-path.cpp:17:19
-	addl	%ecx, %eax
-	.loc	0 17 5                          # dwo-relative-path.cpp:17:5
-	addl	x, %eax
-	movl	%eax, x
-	.loc	0 19 3 is_stmt 1                # dwo-relative-path.cpp:19:3
-	xorl	%eax, %eax
-	popq	%rbp
-	.cfi_def_cfa %rsp, 8
-	retq
-.Ltmp1:
-.Lfunc_end0:
-	.size	main, .Lfunc_end0-main
-	.cfi_endproc
-                                        # -- End function
-	.type	x,@object                       # @x
-	.data
-	.globl	x
-	.p2align	2
-x:
-	.long	10                              # 0xa
-	.size	x, 4
-
-	.type	.L__const.main.y,@object        # @__const.main.y
-	.section	.rodata,"a",@progbits
-.L__const.main.y:
-	.ascii	"abc"
-	.size	.L__const.main.y, 3
-
-	.section	.debug_abbrev,"",@progbits
-	.byte	1                               # Abbreviation Code
-	.byte	74                              # DW_TAG_skeleton_unit
-	.byte	0                               # DW_CHILDREN_no
-	.byte	16                              # DW_AT_stmt_list
-	.byte	23                              # DW_FORM_sec_offset
-	.byte	114                             # DW_AT_str_offsets_base
-	.byte	23                              # DW_FORM_sec_offset
-	.byte	27                              # DW_AT_comp_dir
-	.byte	37                              # DW_FORM_strx1
-	.ascii	"\264B"                         # DW_AT_GNU_pubnames
-	.byte	25                              # DW_FORM_flag_present
-	.byte	118                             # DW_AT_dwo_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	17                              # DW_AT_low_pc
-	.byte	27                              # DW_FORM_addrx
-	.byte	18                              # DW_AT_high_pc
-	.byte	6                               # DW_FORM_data4
-	.byte	115                             # DW_AT_addr_base
-	.byte	23                              # DW_FORM_sec_offset
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	0                               # EOM(3)
-	.section	.debug_info,"",@progbits
-.Lcu_begin0:
-	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
-.Ldebug_info_start0:
-	.short	5                               # DWARF version number
-	.byte	4                               # DWARF Unit Type
-	.byte	8                               # Address Size (in bytes)
-	.long	.debug_abbrev                   # Offset Into Abbrev. Section
-	.quad	3752513468363206953
-	.byte	1                               # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit
-	.long	.Lline_table_start0             # DW_AT_stmt_list
-	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
-	.byte	0                               # DW_AT_comp_dir
-                                        # DW_AT_GNU_pubnames
-	.byte	1                               # DW_AT_dwo_name
-	.byte	1                               # DW_AT_low_pc
-	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
-	.long	.Laddr_table_base0              # DW_AT_addr_base
-.Ldebug_info_end0:
-	.section	.debug_str_offsets,"",@progbits
-	.long	12                              # Length of String Offsets Set
-	.short	5
-	.short	0
-.Lstr_offsets_base0:
-	.section	.debug_str,"MS",@progbits,1
-.Lskel_string0:
-	.asciz	"."                             # string offset=0
-.Lskel_string1:
-	.asciz	"dwo-relative-path.dwo"         # string offset=2
-	.section	.debug_str_offsets,"",@progbits
-	.long	.Lskel_string0
-	.long	.Lskel_string1
-	.section	.debug_str_offsets.dwo,"e",@progbits
-	.long	48                              # Length of String Offsets Set
-	.short	5
-	.short	0
-	.section	.debug_str.dwo,"eMS",@progbits,1
-.Linfo_string0:
-	.asciz	"x"                             # string offset=0
-.Linfo_string1:
-	.asciz	"int"                           # string offset=2
-.Linfo_string2:
-	.asciz	"main"                          # string offset=6
-.Linfo_string3:
-	.asciz	"argc"                          # string offset=11
-.Linfo_string4:
-	.asciz	"argv"                          # string offset=16
-.Linfo_string5:
-	.asciz	"char"                          # string offset=21
-.Linfo_string6:
-	.asciz	"y"                             # string offset=26
-.Linfo_string7:
-	.asciz	"__ARRAY_SIZE_TYPE__"           # string offset=28
-.Linfo_string8:
-	.asciz	"clang version 13.0.0 (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 6666e0d7a29c639df7a1652b6d3bf16f28edd45a)" # string offset=48
-.Linfo_string9:
-	.asciz	"dwo-relative-path.cpp"         # string offset=184
-.Linfo_string10:
-	.asciz	"dwo-relative-path.dwo"         # string offset=206
-	.section	.debug_str_offsets.dwo,"e",@progbits
-	.long	0
-	.long	2
-	.long	6
-	.long	11
-	.long	16
-	.long	21
-	.long	26
-	.long	28
-	.long	48
-	.long	184
-	.long	206
-	.section	.debug_info.dwo,"e",@progbits
-	.long	.Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
-.Ldebug_info_dwo_start0:
-	.short	5                               # DWARF version number
-	.byte	5                               # DWARF Unit Type
-	.byte	8                               # Address Size (in bytes)
-	.long	0                               # Offset Into Abbrev. Section
-	.quad	3752513468363206953
-	.byte	1                               # Abbrev [1] 0x14:0x65 DW_TAG_compile_unit
-	.byte	8                               # DW_AT_producer
-	.short	33                              # DW_AT_language
-	.byte	9                               # DW_AT_name
-	.byte	10                              # DW_AT_dwo_name
-	.byte	2                               # Abbrev [2] 0x1a:0xb DW_TAG_variable
-	.byte	0                               # DW_AT_name
-	.long	37                              # DW_AT_type
-                                        # DW_AT_external
-	.byte	0                               # DW_AT_decl_file
-	.byte	11                              # DW_AT_decl_line
-	.byte	2                               # DW_AT_location
-	.byte	161
-	.byte	0
-	.byte	3                               # Abbrev [3] 0x25:0x4 DW_TAG_base_type
-	.byte	1                               # DW_AT_name
-	.byte	5                               # DW_AT_encoding
-	.byte	4                               # DW_AT_byte_size
-	.byte	4                               # Abbrev [4] 0x29:0x31 DW_TAG_subprogram
-	.byte	1                               # DW_AT_low_pc
-	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
-	.byte	1                               # DW_AT_frame_base
-	.byte	86
-	.byte	2                               # DW_AT_name
-	.byte	0                               # DW_AT_decl_file
-	.byte	13                              # DW_AT_decl_line
-	.long	37                              # DW_AT_type
-                                        # DW_AT_external
-	.byte	5                               # Abbrev [5] 0x38:0xb DW_TAG_formal_parameter
-	.byte	2                               # DW_AT_location
-	.byte	145
-	.byte	120
-	.byte	3                               # DW_AT_name
-	.byte	0                               # DW_AT_decl_file
-	.byte	13                              # DW_AT_decl_line
-	.long	37                              # DW_AT_type
-	.byte	5                               # Abbrev [5] 0x43:0xb DW_TAG_formal_parameter
-	.byte	2                               # DW_AT_location
-	.byte	145
-	.byte	112
-	.byte	4                               # DW_AT_name
-	.byte	0                               # DW_AT_decl_file
-	.byte	13                              # DW_AT_decl_line
-	.long	90                              # DW_AT_type
-	.byte	6                               # Abbrev [6] 0x4e:0xb DW_TAG_variable
-	.byte	2                               # DW_AT_location
-	.byte	145
-	.byte	109
-	.byte	6                               # DW_AT_name
-	.byte	0                               # DW_AT_decl_file
-	.byte	15                              # DW_AT_decl_line
-	.long	104                             # DW_AT_type
-	.byte	0                               # End Of Children Mark
-	.byte	7                               # Abbrev [7] 0x5a:0x5 DW_TAG_pointer_type
-	.long	95                              # DW_AT_type
-	.byte	7                               # Abbrev [7] 0x5f:0x5 DW_TAG_pointer_type
-	.long	100                             # DW_AT_type
-	.byte	3                               # Abbrev [3] 0x64:0x4 DW_TAG_base_type
-	.byte	5                               # DW_AT_name
-	.byte	6                               # DW_AT_encoding
-	.byte	1                               # DW_AT_byte_size
-	.byte	8                               # Abbrev [8] 0x68:0xc DW_TAG_array_type
-	.long	100                             # DW_AT_type
-	.byte	9                               # Abbrev [9] 0x6d:0x6 DW_TAG_subrange_type
-	.long	116                             # DW_AT_type
-	.byte	3                               # DW_AT_count
-	.byte	0                               # End Of Children Mark
-	.byte	10                              # Abbrev [10] 0x74:0x4 DW_TAG_base_type
-	.byte	7                               # DW_AT_name
-	.byte	8                               # DW_AT_byte_size
-	.byte	7                               # DW_AT_encoding
-	.byte	0                               # End Of Children Mark
-.Ldebug_info_dwo_end0:
-	.section	.debug_abbrev.dwo,"e",@progbits
-	.byte	1                               # Abbreviation Code
-	.byte	17                              # DW_TAG_compile_unit
-	.byte	1                               # DW_CHILDREN_yes
-	.byte	37                              # DW_AT_producer
-	.byte	37                              # DW_FORM_strx1
-	.byte	19                              # DW_AT_language
-	.byte	5                               # DW_FORM_data2
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	118                             # DW_AT_dwo_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	2                               # Abbreviation Code
-	.byte	52                              # DW_TAG_variable
-	.byte	0                               # DW_CHILDREN_no
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	63                              # DW_AT_external
-	.byte	25                              # DW_FORM_flag_present
-	.byte	58                              # DW_AT_decl_file
-	.byte	11                              # DW_FORM_data1
-	.byte	59                              # DW_AT_decl_line
-	.byte	11                              # DW_FORM_data1
-	.byte	2                               # DW_AT_location
-	.byte	24                              # DW_FORM_exprloc
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	3                               # Abbreviation Code
-	.byte	36                              # DW_TAG_base_type
-	.byte	0                               # DW_CHILDREN_no
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	62                              # DW_AT_encoding
-	.byte	11                              # DW_FORM_data1
-	.byte	11                              # DW_AT_byte_size
-	.byte	11                              # DW_FORM_data1
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	4                               # Abbreviation Code
-	.byte	46                              # DW_TAG_subprogram
-	.byte	1                               # DW_CHILDREN_yes
-	.byte	17                              # DW_AT_low_pc
-	.byte	27                              # DW_FORM_addrx
-	.byte	18                              # DW_AT_high_pc
-	.byte	6                               # DW_FORM_data4
-	.byte	64                              # DW_AT_frame_base
-	.byte	24                              # DW_FORM_exprloc
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	58                              # DW_AT_decl_file
-	.byte	11                              # DW_FORM_data1
-	.byte	59                              # DW_AT_decl_line
-	.byte	11                              # DW_FORM_data1
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	63                              # DW_AT_external
-	.byte	25                              # DW_FORM_flag_present
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	5                               # Abbreviation Code
-	.byte	5                               # DW_TAG_formal_parameter
-	.byte	0                               # DW_CHILDREN_no
-	.byte	2                               # DW_AT_location
-	.byte	24                              # DW_FORM_exprloc
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	58                              # DW_AT_decl_file
-	.byte	11                              # DW_FORM_data1
-	.byte	59                              # DW_AT_decl_line
-	.byte	11                              # DW_FORM_data1
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	6                               # Abbreviation Code
-	.byte	52                              # DW_TAG_variable
-	.byte	0                               # DW_CHILDREN_no
-	.byte	2                               # DW_AT_location
-	.byte	24                              # DW_FORM_exprloc
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	58                              # DW_AT_decl_file
-	.byte	11                              # DW_FORM_data1
-	.byte	59                              # DW_AT_decl_line
-	.byte	11                              # DW_FORM_data1
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	7                               # Abbreviation Code
-	.byte	15                              # DW_TAG_pointer_type
-	.byte	0                               # DW_CHILDREN_no
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	8                               # Abbreviation Code
-	.byte	1                               # DW_TAG_array_type
-	.byte	1                               # DW_CHILDREN_yes
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	9                               # Abbreviation Code
-	.byte	33                              # DW_TAG_subrange_type
-	.byte	0                               # DW_CHILDREN_no
-	.byte	73                              # DW_AT_type
-	.byte	19                              # DW_FORM_ref4
-	.byte	55                              # DW_AT_count
-	.byte	11                              # DW_FORM_data1
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	10                              # Abbreviation Code
-	.byte	36                              # DW_TAG_base_type
-	.byte	0                               # DW_CHILDREN_no
-	.byte	3                               # DW_AT_name
-	.byte	37                              # DW_FORM_strx1
-	.byte	11                              # DW_AT_byte_size
-	.byte	11                              # DW_FORM_data1
-	.byte	62                              # DW_AT_encoding
-	.byte	11                              # DW_FORM_data1
-	.byte	0                               # EOM(1)
-	.byte	0                               # EOM(2)
-	.byte	0                               # EOM(3)
-	.section	.debug_addr,"",@progbits
-	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
-.Ldebug_addr_start0:
-	.short	5                               # DWARF version number
-	.byte	8                               # Address size
-	.byte	0                               # Segment selector size
-.Laddr_table_base0:
-	.quad	x
-	.quad	.Lfunc_begin0
-.Ldebug_addr_end0:
-	.section	.debug_gnu_pubnames,"",@progbits
-	.long	.LpubNames_end0-.LpubNames_start0 # Length of Public Names Info
-.LpubNames_start0:
-	.short	2                               # DWARF Version
-	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
-	.long	40                              # Compilation Unit Length
-	.long	41                              # DIE offset
-	.byte	48                              # Attributes: FUNCTION, EXTERNAL
-	.asciz	"main"                          # External Name
-	.long	26                              # DIE offset
-	.byte	32                              # Attributes: VARIABLE, EXTERNAL
-	.asciz	"x"                             # External Name
-	.long	0                               # End Mark
-.LpubNames_end0:
-	.section	.debug_gnu_pubtypes,"",@progbits
-	.long	.LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info
-.LpubTypes_start0:
-	.short	2                               # DWARF Version
-	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
-	.long	40                              # Compilation Unit Length
-	.long	37                              # DIE offset
-	.byte	144                             # Attributes: TYPE, STATIC
-	.asciz	"int"                           # External Name
-	.long	100                             # DIE offset
-	.byte	144                             # Attributes: TYPE, STATIC
-	.asciz	"char"                          # External Name
-	.long	0                               # End Mark
-.LpubTypes_end0:
-	.ident	"clang version 13.0.0 (https://chromium.googlesource.com/external/github.com/llvm/llvm-project 6666e0d7a29c639df7a1652b6d3bf16f28edd45a)"
-	.section	".note.GNU-stack","",@progbits
-	.addrsig
-	.addrsig_sym x
-	.section	.debug_line,"",@progbits
-.Lline_table_start0: