Skip to content

[SVE] necessary write is dropped #121229

Open
@eustas

Description

@eustas

Godbolt: https://godbolt.org/z/5cjfqh6K1

When WANT_BUG is 0 everything works as expected.
When WANT_BUG is 1 result of rng.Fill is dropped, consequently result is undefined garbage.

Compare disassembly of nevermind::N_SVE2_128::BugCore(unsigned int, unsigned long); when WANT_BUG is 0 it is 3 instructions longer; 2 of those are calculating the result (add z4.d, z2.d, z3.d) and storing it (st1d {z4.d}, p0, [x8]).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions