<?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 lib.rs</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>7a66c39a - Remove some `#![expect(clippy::allow_attributes_without_reason)]` (#10661)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/cranelift/interpreter/src/lib.rs#7a66c39a</link>
        <description>Remove some `#![expect(clippy::allow_attributes_without_reason)]` (#10661)Clean up some crates by migrating from `#[allow]` to `#[expect]`(ideally) or `#[allow]`-with-reason

            List of files:
            /wasmtime-44.0.1/cranelift/interpreter/src/lib.rs</description>
        <pubDate>Wed, 23 Apr 2025 21:07:33 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>45b60bd6 - Start using `#[expect]` instead of `#[allow]` (#9696)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/cranelift/interpreter/src/lib.rs#45b60bd6</link>
        <description>Start using `#[expect]` instead of `#[allow]` (#9696)* Start using `#[expect]` instead of `#[allow]`In Rust 1.81, our new MSRV, a new feature was added to Rust to use`#[expect]` to control lint levels. This new lint annotation willsilence a lint but will itself cause a lint if it doesn&apos;t actuallysilence anything. This is quite useful to ensure that annotations don&apos;tget stale over time.Another feature is the ability to use a `reason` directive on theattribute with a string explaining why the attribute is there. Thisstring is then rendered in compiler messages if a warning or errorhappens.This commit migrates applies a few changes across the workspace:* Some `#[allow]` are changed to `#[expect]` with a `reason`.* Some `#[allow]` have a `reason` added if the lint conditionally fires  (mostly related to macros).* Some `#[allow]` are removed since the lint doesn&apos;t actually fire.* The workspace configures `clippy::allow_attributes_without_reason = &apos;warn&apos;`  as a &quot;ratchet&quot; to prevent future regressions.* Many crates are annotated to allow `allow_attributes_without_reason`  during this transitionary period.The end-state is that all crates should use`#[expect(..., reason = &quot;...&quot;)]` for any lint that unconditionally firesbut is expected. The `#[allow(..., reason = &quot;...&quot;)]` lint should be usedfor conditionally firing lints, primarily in macro-related code.The `allow_attributes_without_reason = &apos;warn&apos;` level is intended to bepermanent but the transitionary`#[expect(clippy::allow_attributes_without_reason)]` crate annotationsto go away over time.* Fix adapter buildprtest:full* Fix one-core build of icache coherence* Use `allow` for missing_docsWork around rust-lang/rust#130021 which was fixed in Rust 1.83 and isn&apos;tfixed for our MSRV at this time.* More MSRV compat

            List of files:
            /wasmtime-44.0.1/cranelift/interpreter/src/lib.rs</description>
        <pubDate>Mon, 02 Dec 2024 17:19:20 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>2776074d - cranelift: Add stack support to the interpreter with virtual addresses (#3187)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/cranelift/interpreter/src/lib.rs#2776074d</link>
        <description>cranelift: Add stack support to the interpreter with virtual addresses (#3187)* cranelift: Add stack support to the interpreterWe also change the approach for heap loads and stores.Previously we would use the offset as the address to the heap. However,this approach does not allow using the load/store instructions toread/write from both the heap and the stack.This commit changes the addressing mechanism of the interpreter. We nowreturn the real addresses from the addressing instructions(stack_addr/heap_addr), and instead check if the address passed intothe load/store instructions points to an area in the heap or the stack.* cranelift: Add virtual addresses to cranelift interpreterAdds a  Virtual Addressing scheme that was discussed as a betteralternative to returning the real addresses.The virtual addresses are split into 4 regions (stack, heap, tables andglobal values), and the address itself is composed of an `entry` fieldand an `offset` field. In general the `entry` field corresponds to theinstance of the resource (e.g. table5 is entry 5) and the `offset` fieldis a byte offset inside that entry.There is one exception to this which is the stack, where due to onlyhaving one stack, the whole address is an offset field.The number of bits in entry vs offset fields is variable with respect tothe `region` and the address size (32bits vs 64bits). This is donebecause with 32 bit addresses we would have to compromise on heap size,or have a small number of global values / tables. With 64 bit addresseswe do not have to compromise on this, but we need to support 32 bitaddresses.* cranelift: Remove interpreter trap codes* cranelift: Calculate frame_offset when entering or exiting a frame* cranelift: Add safe read/write interface to DataValue* cranelift: DataValue write full 128bit slot for booleans* cranelift: Use DataValue accessors for trampoline.

            List of files:
            /wasmtime-44.0.1/cranelift/interpreter/src/lib.rs</description>
        <pubDate>Tue, 24 Aug 2021 16:29:11 +0000</pubDate>
        <dc:creator>Afonso Bordado &lt;afonso360@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>6d500998 - Rewrite interpreter generically (#2323)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/cranelift/interpreter/src/lib.rs#6d500998</link>
        <description>Rewrite interpreter generically (#2323)* Rewrite interpreter genericallyThis change re-implements the Cranelift interpreter to use generic values; this makes it possible to do abstract interpretation of Cranelift instructions. In doing so, the interpretation state is extracted from the `Interpreter` structure and is accessed via a `State` trait; this makes it possible to not only more clearly observe the interpreter&apos;s state but also to interpret using a dummy state (e.g. `ImmutableRegisterState`). This addition made it possible to implement more of the Cranelift instructions (~70%, ignoring the x86-specific instructions).* Replace macros with closures

            List of files:
            /wasmtime-44.0.1/cranelift/interpreter/src/lib.rs</description>
        <pubDate>Mon, 02 Nov 2020 20:28:07 +0000</pubDate>
        <dc:creator>Andrew Brown &lt;andrew.brown@intel.com&gt;</dc:creator>
    </item>
<item>
        <title>8b18fc59 - Add a CLIF interpreter</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/cranelift/interpreter/src/lib.rs#8b18fc59</link>
        <description>Add a CLIF interpreterThis is an incomplete version of a Cranelift IR interpreter: only a small subset of instructions are implemented and (known) missing parts are marked with TODO or FIXME.

            List of files:
            /wasmtime-44.0.1/cranelift/interpreter/src/lib.rs</description>
        <pubDate>Tue, 21 Apr 2020 18:57:08 +0000</pubDate>
        <dc:creator>Andrew Brown &lt;andrew.brown@intel.com&gt;</dc:creator>
    </item>
</channel>
</rss>
