Displaying 6 results from an estimated 6 matches for "__llvm_retpoline_push".
2018 Feb 09
0
retpoline mitigation and 6.0
On Fri, 2018-02-09 at 11:24 -0800, Reid Kleckner wrote:
> I haven't read the all the emails in full detail, but it seems pretty
> clear that __x86_indirect_thunk and __llvm_retpoline_push do not do
> the same things. It sounds like __llvm_retpoline_push is equivalent
> to __x86_indirect_thunk except first it swaps the two words on the
> top of the stack.
>
> I arranged it this way because the x86 call instruction puts the
> intended return address on the top of th...
2018 Feb 09
3
retpoline mitigation and 6.0
...hink I found another one
that looks like this:
$ clang -S -O2 -m32 -mregparm=3 -mretpoline spill_across_rp.cpp -o - |
grep _retpoline_push -B2
...
movl %eax, 8(%esp) # 4-byte Spill
...
pushl %edi
movl 8(%esp), %edi # 4-byte Reload
calll __llvm_retpoline_push
That's obviously broken, it doesn't account for the SP adjustment in the
push.
It's weird, because it's basically the opposite of the problem you're
having, which looks like LLVM *is* accounting for the push and is trying to
adjust its offsets accordingly.
Can you send along...
2018 Feb 09
3
retpoline mitigation and 6.0
I haven't read the all the emails in full detail, but it seems pretty clear
that __x86_indirect_thunk and __llvm_retpoline_push do not do the same
things. It sounds like __llvm_retpoline_push is equivalent to
__x86_indirect_thunk except first it swaps the two words on the top of the
stack.
I arranged it this way because the x86 call instruction puts the intended
return address on the top of the stack, and there's no ea...
2018 Feb 19
0
retpoline mitigation and 6.0
...s:
>
> $ clang -S -O2 -m32 -mregparm=3 -mretpoline spill_across_rp.cpp -o - | grep
> _retpoline_push -B2
> ...
> movl %eax, 8(%esp) # 4-byte Spill
> ...
> pushl %edi
> movl 8(%esp), %edi # 4-byte Reload
> calll __llvm_retpoline_push
>
> That's obviously broken, it doesn't account for the SP adjustment in the
> push.
>
> It's weird, because it's basically the opposite of the problem you're
> having, which looks like LLVM *is* accounting for the push and is trying to
> adjust its offsets...
2018 Feb 09
0
retpoline mitigation and 6.0
On Fri, 2018-02-09 at 12:54 +0000, David Woodhouse wrote:
> On Fri, 2018-02-09 at 10:36 +0000, David Woodhouse wrote:
> >
> > Did you get anywhere with the function attribute? Having isolated the
> > next boot failure to "it goes away if I compile io_apic.c without
> > retpoline", bisecting it per-function would help to further delay the
> > bit where I
2018 Feb 09
2
retpoline mitigation and 6.0
On Fri, 2018-02-09 at 10:36 +0000, David Woodhouse wrote:
>
> Did you get anywhere with the function attribute? Having isolated the
> next boot failure to "it goes away if I compile io_apic.c without
> retpoline", bisecting it per-function would help to further delay the
> bit where I actually have to start *thinking*...
It's mp_register_ioapic(), and only when