<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>313432</bug_id>
          
          <creation_ts>2026-04-27 07:46:46 -0700</creation_ts>
          <short_desc>Introduced UnbarrieredMonotonicTime.</short_desc>
          <delta_ts>2026-04-27 15:35:53 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2204921</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2026-04-27 07:46:46 -0700</bug_when>
    <thetext>UnbarrieredMonotonicTime has the timer resolution of MonotonicTime, but is optimized for speed, and does not do use any  instruction barriers.  As a result, a read of UnbarrieredMonotonicTime may be re-ordered by the CPU around adjacent instructions.  This may reduce fidelity in accuracy for use cases like some profiling uses.  However, for clients like the Opportunistic Task Scheduler, where we may want to sample the time more frequently, and are only concerned about expired time, such slight loss of fidelity in accuracy is inconsequential.

At present, UnbarrieredMonotonicTime only implemented with these new semantics for ARM64 + OS(DARWIN) only, and will fall back to MonotonicTime for all other ports.

Since UnbarrieredMonotonicTime is faster than ApproximateTime (whose sole purpose is speed), and has higher fidelity than ApproximateTime, we&apos;ll have ApproximateTime build on UnbarrieredMonotonicTime for the ARM64 + OS(DARWIN) port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2204922</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-04-27 07:47:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/175676940&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2204994</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2026-04-27 10:53:42 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/63719</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2205146</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-04-27 15:35:52 -0700</bug_when>
    <thetext>Committed 312153@main (0d7053c9c316): &lt;https://commits.webkit.org/312153@main&gt;

Reviewed commits have been landed. Closing PR #63719 and removing active labels.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>