<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in tail_loop.rs</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>56cae563 - Fix `ExtendedOpcode::MAX` for Pulley (#12867)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#56cae563</link>
        <description>Fix `ExtendedOpcode::MAX` for Pulley (#12867)This was off-by-one which could lead to possible undefined behavior inMiri and at runtime when disassembling invalid opcodes. This isn&apos;treachable from Wasmtime itself since Cranelift only generates validopcodes, but it&apos;s nonetheless reachable via `wasmtime objdump` and stillgood to fix.

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Mon, 30 Mar 2026 15:30:12 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>a0450a7a - Update nightly rust used in CI (#11388)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#a0450a7a</link>
        <description>Update nightly rust used in CI (#11388)In addition to keeping things up-to-date this enables testing the`tail_loop` interpreter mode of Pulley using the `become` keyword andnative Rust syntax. This still isn&apos;t ready for prime-time so it&apos;s justas gated as before, but we can promote a `cargo check` to a `cargo test`in CI.

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Wed, 06 Aug 2025 23:13:01 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>90ac295e - Update Wasmtime to the 2024 Rust Edition (#10806)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#90ac295e</link>
        <description>Update Wasmtime to the 2024 Rust Edition (#10806)* Update Wasmtime to the 2024 Rust EditionNow that our MSRV supports the 2024 edition it&apos;s possible to make thisswitch. This commit moves Wasmtime to the 2024 Edition to keepup-to-date with Rust idioms and access many of the edition featuresexclusive to the 2024 edition.prtest:full* Reformat with the 2024 edition

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Mon, 19 May 2025 16:40:55 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>c59e0a39 - pulley: Remove `unwrap_uninhabited` helper function (#10174)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#c59e0a39</link>
        <description>pulley: Remove `unwrap_uninhabited` helper function (#10174)No longer needed on our MSRV any more.

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Tue, 04 Feb 2025 15:22:32 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>1d1c06f3 - Add basic support for profiling Pulley (#10034)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#1d1c06f3</link>
        <description>Add basic support for profiling Pulley (#10034)* Add basic support for profiling PulleyThis commit adds basic support for profiling the Pulley interpreter.This is partially achievable previously through the use of nativeprofilers, but the downside of that approach is that you can find hotinstructions but it&apos;s not clear in what context the hot instructions arebeing executed nor what functions are hot. The goal of this profiler isto show pulley bytecode and time spent in bytecode itself to betterunderstand the shape of code around a hot instruction to identify newmacro opcodes for example.The general structure of this new profiler is:* There is a compile-time feature for Pulley which is off-by-default  where, when enabled, Pulley will record its current program counter  into an `AtomicUsize` before each instruction.* When the CLI has `--profile pulley` Wasmtime will spawn a sampling  thread in the same process which will periodically read from this  `AtomicUsize` to record where the program is currently executing.* The Pulley profiler additionally records all bytecode through the use  of the `ProfilingAgent` trait to ensure that the recording has access  to all bytecode as well.* Samples are taken throughout the process and emitted to a  `pulley-$pid.data` file. This file is then interpreted and printed by  an &quot;example&quot; program `profiler-html.rs` in the `pulley/examples`  directory.The end result is that hot functions of Pulley bytecode can be seen andinstructions are annotated with how frequently they were executed. Thisenables finding hot loops and understanding more about the whole loop,bytecodes that were selected, and such.* Add missing source file* Check the profile-pulley feature in CI* Miscellaneous fixes for CI* Fix type-checking of `become` on nightly Rust* Fix more misc CI issues* Fix dispatch in tail loop* Update test expectations* Review comments* Fix a feature combo

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Thu, 16 Jan 2025 22:49:36 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>c2fa8171 - pulley: Add simple debugging support (#9796)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#c2fa8171</link>
        <description>pulley: Add simple debugging support (#9796)This commit adds a `debug.rs` to Pulley to print out the instructionbeing executed and the state of all registers between instructions. Thisis turned off by default and does not have a runtime orenvironment-based configuration value. Instead changing this requireschanging source code for now. This enables the interpreter loop tounconditionally use this &quot;debugger&quot; where it&apos;ll compile away to nothingin release/benchmarking situations.This commit additionally adds this support to the `tail_loop` module andfixes a few issues there such as it accidentally not being tested in CIas well as a new `#[cfg]` to use it on stable rust with normal `return`under the assumption that LLVM is highly likely to do TCO.

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Wed, 11 Dec 2024 23:07:14 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>5ed60c22 - Refactor Pulley&apos;s interpreter loop (#9629)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/pulley/src/interp/tail_loop.rs#5ed60c22</link>
        <description>Refactor Pulley&apos;s interpreter loop (#9629)* Refactor Pulley&apos;s interpreter loop* Define loop-over-match and loop-with-tail-calls in separate files to  make it more clear which is in which (and less `#[cfg]`)* Move per-opcode handlers to `interp.rs` outside of a macro invocation  to get better native editor support (e.g. formatting, hints, etc).This is roughly intended to be perf-neutral but we don&apos;t have manyautomated benchmarks yet for Pulley so it&apos;s intended to profile later aswell.* Model interpreter as trait implementation* Add more comments

            List of files:
            /wasmtime-44.0.1/pulley/src/interp/tail_loop.rs</description>
        <pubDate>Fri, 22 Nov 2024 19:21:20 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
</channel>
</rss>
