diff options
Diffstat (limited to 'results/scraper/fex/2754')
| -rw-r--r-- | results/scraper/fex/2754 | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/results/scraper/fex/2754 b/results/scraper/fex/2754 new file mode 100644 index 000000000..51bb7cdbb --- /dev/null +++ b/results/scraper/fex/2754 @@ -0,0 +1,17 @@ +Canonical PPA build somehow breaking thunks +Behaviour when loading thunks. `Failed to load MakeHostTrampolineForGuestFunction from FEX executable` + +Symbol of `MakeHostTrampolineForGuestFunction` in libX11-host when built from the Canonical PPA builders. +``` +ryanh@ubuntu:/mnt/Work/Work/work/FEXNew/Build_Lenovo$ objdump -D /usr/lib/fex-emu/HostThunks/libX11-host.so | grep "MakeHostTrampolineForGuestFunction" +000000000002ac64 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm>: + 31044: 97ffe708 bl 2ac64 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm> + ``` +Symbol of `MakeHostTrampolineForGuestFunction` in libX11-host when built locally. + ``` +ryanh@ubuntu:/mnt/Work/Work/work/FEXNew/Build_Lenovo$ objdump -D HostLibs_64/libX11-host.so | grep "MakeHostTrampolineForGuestFunction" +000000000002a890 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm>: + 31340: 94001a88 bl 37d60 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm@plt> + ``` + +Somehow this weak symbol is getting converted from a plt to a direct branch with the canonical PPA, breaking FEX's thunks in the process. `-Bsymbolic-functions` seems to be the only additional compile option that stands out but when manually adding it I couldn't reproduce this issue. Do we need to convert it to always be an undefined symbol rather than a weak symbol so this can never occur? \ No newline at end of file |