[PATCH] D70757: [ms] Add @feat.00 magic symbol to COFF object files from AsmParser

Eric Astor via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 27 13:51:25 PST 2019


epastor added a comment.

In D70757#1762286 <https://reviews.llvm.org/D70757#1762286>, @craig.topper wrote:

> Is it possible for someone to write something in their hand written assembly related to SEH that would make this behavior incorrect?


Not yet, no - or maybe just not yet without extreme contortions. This is only incorrect if an SEH handler is registered, but not registered for safeseh processing (by listing its symbol index in the .sxdata section).

To register an SEH handler, one normally uses the .seh_handler directive - which LLVM doesn't currently implement for 32-bit configurations. (In MASM, one would use the FRAME parameter to PROC.) This would be somewhere between odd and impossible to do by hand.

If at some later date we implement .seh_handler for 32-bit configurations, or (as I'm working on) support PROC when building via a new llvm-ml driver, this would become incorrect; we'd need to set this bit iff the user specified safeseh to the assembler, as ml.exe does with the /safeseh command-line switch [1].

  [1]: https://docs.microsoft.com/en-us/cpp/assembler/masm/ml-and-ml64-command-line-reference?view=vs-2019


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D70757/new/

https://reviews.llvm.org/D70757





More information about the llvm-commits mailing list