[all-commits] [llvm/llvm-project] 69f202: [llvm][X86] Fix merging of large sp updates (#125007)

macurtis-amd via All-commits all-commits at lists.llvm.org
Tue Feb 4 05:12:37 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 69f202bf366a9c4c667d8c117d02ccff15705216
      https://github.com/llvm/llvm-project/commit/69f202bf366a9c4c667d8c117d02ccff15705216
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2025-02-04 (Tue, 04 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86FrameLowering.h
    A llvm/test/CodeGen/X86/merge-huge-sp-updates.ll

  Log Message:
  -----------
  [llvm][X86] Fix merging of large sp updates (#125007)

In cases where `emitSPUpdate` produced multiple adds:
```
call foo
add 0x7FFFFFFF   <--chunk size
add ...
```
`mergeSPUpdates` would incorrectly adjust the offset of the first add
producing an invalid immediate value.

This change teaches `mergeSPUpdates` to look for a subsequent add if
updating the current one would exceed the chunk size.

@phoebewang @mconst



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list