Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1c91665ec948f498eab32a5662143ac9affd10f7
      
https://github.com/WebKit/WebKit/commit/1c91665ec948f498eab32a5662143ac9affd10f7
  Author: Fady Farag <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M Source/JavaScriptCore/offlineasm/arm64.rb
    M Source/JavaScriptCore/offlineasm/risc.rb

  Log Message:
  -----------
  [JSC] offlineasm: emit tbz/tbnz for single-bit test branches on ARM64
https://bugs.webkit.org/show_bug.cgi?id=322779
rdar://186041838

Reviewed by Keith Miller.

riscLowerTest lowers every masked test-and-branch:

    btpnz t0, 8, .foo

into an and into a temporary followed by a compare-and-branch on it:

    and x13, x0, #8
    cbnz x13, .foo

When the mask is a single bit, ARM64 has an instruction for exactly this:

    tbnz x0, #3, .foo

Only local-label targets are folded.

* Source/JavaScriptCore/offlineasm/arm64.rb:
* Source/JavaScriptCore/offlineasm/risc.rb:

Canonical link: https://commits.webkit.org/320266@main



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

Reply via email to