__safe_se_handler_base should be either absolute 0 (when no SafeSEH
table is present), or relative to the image base (when the table is
present). An earlier change inadvertedly made the symbol absolute in
both cases, leading to the SafeSEH table not being locatble at run
time. This change fixes that and updates the safeseh test to check for
the presence of the relocation.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
The code change mostly just moves code around, but this helps because we previously fixed the symbol type too late, so that it was still output as an absolute symbol. After moving the code around, we now output __safe_se_handler_base with the correct symbol type.