[llvm-dev] Status of Intel JCC Mitigations and Next Steps

Jon Chesterfield via llvm-dev llvm-dev at lists.llvm.org
Wed Mar 25 00:02:37 PDT 2020


>
> We definitely should not have any undocumented or unpredictable behavior
> in the assembler.  The actual instruction bytes matter.  That said, I’m not
> sure there’s a strong line between “automagic” and “explicit”, as long as
> the rules are documented.
>

> -Eli
>


If one is writing assembly at all there's a fair chance the exact bytes
matter. I've previously tried to persuade professional assembly programmers
that an optimizing assembler is a good thing and been soundly rejected.

I was however able to sell a directive based approach, where the default in
assembly source was still to emit exactly what the asm asked for. Compiler
generated assembly inserted the directive at the top unless told not to, as
a rough heuristic that compiler generated code is usually fair game for
such modifications. Some file scope inline asm still picked up an extra
line to turn the optimiser back off.

I would suggest doing likewise. File scope directives are fine, as long as
they're off by default. Otherwise we'll break existing code and annoy
future developers, probably in a fashion which makes for difficult
debugging.

Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200325/95d16cfb/attachment.html>


More information about the llvm-dev mailing list