bwendling wrote:
>From the Linux kernel.
Before:
```
ffffffff823a4590 <_raw_spin_lock_irqsave>:
ffffffff823a4590: f3 0f 1e fa endbr64
ffffffff823a4594: 53 push %rbx
ffffffff823a4595: 48 83 ec 10 sub $0x10,%rsp
ffffffff823a4599: 65 48 8b 05 7f 3a 37 mov %gs:0x1373a7f(%rip),%rax
# ffffffff83718020 <__stack_chk_guard>
ffffffff823a45a0: 01
ffffffff823a45a1: 48 89 44 24 08 mov %rax,0x8(%rsp)
ffffffff823a45a6: 48 c7 04 24 00 00 00 movq $0x0,(%rsp)
ffffffff823a45ad: 00
ffffffff823a45ae: 9c pushf
ffffffff823a45af: 8f 04 24 pop (%rsp)
ffffffff823a45b2: 48 8b 1c 24 mov (%rsp),%rbx
ffffffff823a45b6: fa cli
ffffffff823a45b7: 65 ff 05 72 3a 37 01 incl %gs:0x1373a72(%rip)
# ffffffff83718030 <__preempt_count>
ffffffff823a45be: b9 01 00 00 00 mov $0x1,%ecx
ffffffff823a45c3: 31 c0 xor %eax,%eax
ffffffff823a45c5: f0 0f b1 0f lock cmpxchg %ecx,(%rdi)
ffffffff823a45c9: 75 1d jne ffffffff823a45e8
<_raw_spin_lock_irqsave+0x58>
ffffffff823a45cb: 65 48 8b 05 4d 3a 37 mov %gs:0x1373a4d(%rip),%rax
# ffffffff83718020 <__stack_chk_guard>
ffffffff823a45d2: 01
ffffffff823a45d3: 48 3b 44 24 08 cmp 0x8(%rsp),%rax
ffffffff823a45d8: 75 17 jne ffffffff823a45f1
<_raw_spin_lock_irqsave+0x61>
ffffffff823a45da: 48 89 d8 mov %rbx,%rax
ffffffff823a45dd: 48 83 c4 10 add $0x10,%rsp
ffffffff823a45e1: 5b pop %rbx
ffffffff823a45e2: 2e e9 48 18 00 00 cs jmp ffffffff823a5e30
<__pi___x86_return_thunk>
ffffffff823a45e8: 89 c6 mov %eax,%esi
ffffffff823a45ea: e8 e1 06 00 00 call ffffffff823a4cd0
<queued_spin_lock_slowpath>
ffffffff823a45ef: eb da jmp ffffffff823a45cb
<_raw_spin_lock_irqsave+0x3b>
ffffffff823a45f1: e8 da 2f ff ff call ffffffff823975d0
<__stack_chk_fail>
ffffffff823a45f6: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
ffffffff823a45fd: 00 00 00
```
Now:
```
ffffffff8238f9e0 <_raw_spin_lock_irqsave>:
ffffffff8238f9e0: f3 0f 1e fa endbr64
ffffffff8238f9e4: 53 push %rbx
ffffffff8238f9e5: 9c pushf
ffffffff8238f9e6: 5b pop %rbx
ffffffff8238f9e7: fa cli
ffffffff8238f9e8: 65 ff 05 41 66 38 01 incl %gs:0x1386641(%rip)
# ffffffff83716030 <__preempt_count>
ffffffff8238f9ef: b9 01 00 00 00 mov $0x1,%ecx
ffffffff8238f9f4: 31 c0 xor %eax,%eax
ffffffff8238f9f6: f0 0f b1 0f lock cmpxchg %ecx,(%rdi)
ffffffff8238f9fa: 75 0a jne ffffffff8238fa06
<_raw_spin_lock_irqsave+0x26>
ffffffff8238f9fc: 48 89 d8 mov %rbx,%rax
ffffffff8238f9ff: 5b pop %rbx
ffffffff8238fa00: 2e e9 aa 17 00 00 cs jmp ffffffff823911b0
<__pi___x86_return_thunk>
ffffffff8238fa06: 89 c6 mov %eax,%esi
ffffffff8238fa08: e8 63 06 00 00 call ffffffff82390070
<queued_spin_lock_slowpath>
ffffffff8238fa0d: eb ed jmp ffffffff8238f9fc
<_raw_spin_lock_irqsave+0x1c>
ffffffff8238fa0f: 90 nop
```
https://github.com/llvm/llvm-project/pull/92040
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits