[all-commits] [llvm/llvm-project] 3f3e85: [X86] ICMP EQ/NE MIN_SIGNED_INT - avoid immediate ...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue Jun 11 08:39:15 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3f3e85cd234c1a57021b6622590f75d42054ef12
      https://github.com/llvm/llvm-project/commit/3f3e85cd234c1a57021b6622590f75d42054ef12
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-06-11 (Tue, 11 Jun 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/2008-06-16-SubregsBug.ll
    M llvm/test/CodeGen/X86/abs.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/is_fpclass.ll
    M llvm/test/CodeGen/X86/lsr-overflow.ll
    M llvm/test/CodeGen/X86/shrink-compare-pgso.ll
    M llvm/test/CodeGen/X86/shrink-compare.ll

  Log Message:
  -----------
  [X86] ICMP EQ/NE MIN_SIGNED_INT - avoid immediate argument by using NEG + SETO/SETNO (#94948)

For i64 this avoids loading a 64-bit value into register, for smaller registers this just avoids an immediate operand.

For i8+i16, limit to one use case as we save fewer bytes and these can be wasted entirely on extra register moves.

Fixes #67709



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