On Thu, May 24, 2018 at 3:05 PM H. Peter Anvin <h...@zytor.com> wrote: > COMPILER AR: "=rm" should NEVER generate worse code than "=r". That is > unequivocally a compiler bug.
Filed: https://bugs.llvm.org/show_bug.cgi?id=37583 > >> You are claiming it doesn't buy us anything, but you are only looking at > > the paravirt case which is kind of "special" (in the short bus kind of way), > > > > That's fair. Is another possible solution to have paravirt maybe not use > > native_save_fl() then, but its own non-static-inline-without-m-constraint > > implementation? > KERNEL AR: change native_save_fl() to an extern inline with an assembly > out-of-line implementation, to satisfy the paravirt requirement that no > GPRs other than %rax are clobbered. i'm happy to add that, do you have a recommendation if it should go in an existing .S file or a new one (and if so where/what shall I call it?). -- Thanks, ~Nick Desaulniers