[llvm] [llvm-exegesis] Add explicit support for setting DF in X86 (PR #115644)

Aiden Grossman via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 13 16:26:25 PST 2024


boomanaiden154 wrote:

> The ABI requires that DF is cleared before a function returns - are we guaranteeing that?

We are not. We're also not restoring eflags at all, which would have the same effect, so it seems like a separate issue that needs to be fixed.

It doesn't seem like the `prologepilog` pass ensures the relevant parts of `rflags` are set appropriately, at least for us. I'll look into that in a bit.

This also only matters for the in-process execution mode. When we call into the snippet in subprocess mode, it's no return (the MCJITed code makes an exit syscall). We should probably be disabling prolog/epilog insertion in that mode...

Given that, I'm not sure we should block on that. I've filed #116127 for tracking purpose. I'll try and put some other patches up to fix the other issues.

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


More information about the llvm-commits mailing list