[llvm] [dsymutil][DWARFLinker] Refactor handling mergeable libraries. (PR #80615)

Alpha Abdoulaye via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 22 10:58:25 PDT 2024


Alpha-10000 wrote:

Additionally, there is on outstanding thing, regarding compatibility with linking dSYM produced before the changes.
I attached a fairly straightforward reproducer in [relink.tar.gz](https://github.com/llvm/llvm-project/files/14726712/relink.tar.gz). 
Replace the dsymutil paths with your local ones, and run `make mrproper && make all-relink && make mix && make strip && lldb`.
You can see how some external data has an incorrect type:
```   7   	int main()
   8   	{
   9   	  int result = foo();
-> 10  	  printf("FOO %d\n", result + baz - altfoo());
   11  	  display();
   12  	  return 0;
   13  	}
Target 0: (relink) stopped.
(lldb) p baz
(void *) 0x0000000000000003 // <- should be int
````


https://github.com/llvm/llvm-project/pull/80615


More information about the llvm-commits mailing list