[llvm] [SystemZ] Implement .machine (push|pop) directives (PR #137302)
Ulrich Weigand via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 25 06:31:30 PDT 2025
uweigand wrote:
> This implementation makes the assumption that, without any `.machine` directive, the "current" machine is undefined, rather than trying to derive it based on the host machine. Thus, in this implementation, any `.machine push` _must_ be preceded by at least one `.machine <cpu>`. Otherwise, a parsing error is recognized.
I don't think this matches GAS behavior. Why is this necessary? Can't we just push the feature bits instead of the name onto the stack? There's the default set of feature bits that's already detected (and used before any explicit machine directive); a first push would just push this; subsequent pops would restore whatever bits are set without having to re-compute them from a name.
https://github.com/llvm/llvm-project/pull/137302
More information about the llvm-commits
mailing list