Stream: git-wasmtime

Topic: wasmtime / PR #5036 cranelift: Support `bnot`, `band`, `b...


view this post on Zulip Wasmtime GitHub notifications bot (Oct 11 2022 at 00:55):

ArtBlnd edited PR #5036 from x86_64-float-bitops1 to main:

<!--

Please ensure that the following steps are all taken care of before submitting
the PR.

Please ensure all communication adheres to the code of conduct.
-->

This patch implements float bitops on x86_64 using SSE instructions.
@afonso360

view this post on Zulip Wasmtime GitHub notifications bot (Oct 17 2022 at 21:48):

afonso360 submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2022 at 18:52):

ArtBlnd has marked PR #5036 as ready for review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2022 at 18:52):

ArtBlnd edited PR #5036 from x86_64-float-bitops1 to main:

<!--

Please ensure that the following steps are all taken care of before submitting
the PR.

Please ensure all communication adheres to the code of conduct.
-->

This patch implements float bitops on x86_64 using SSE instructions.
@afonso360

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2022 at 19:07):

ArtBlnd updated PR #5036 from x86_64-float-bitops1 to main.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 24 2022 at 15:48):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 24 2022 at 15:48):

abrown created PR review comment:

Same comment here and below.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 24 2022 at 15:48):

abrown created PR review comment:

We should probably use the same if syntax here for consistency...

view this post on Zulip Wasmtime GitHub notifications bot (Oct 24 2022 at 15:48):

abrown created PR review comment:

I think it might be preferable to use ANDNPS here: AND-ing the register to itself keeps the same bits in place and the NOT part will do what we want it to do. That way we avoid an extra PCMPEQ* due to the vector_all_ones.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 24 2022 at 15:48):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 02:54):

ArtBlnd updated PR #5036 from x86_64-float-bitops1 to main.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 02:55):

ArtBlnd submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 02:55):

ArtBlnd created PR review comment:

I am not sure we have to make mask for xor or and after xor. also why than our eq tests does not fail because of side-effects?

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 03:03):

ArtBlnd edited PR review comment.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 04:37):

ArtBlnd updated PR #5036 from x86_64-float-bitops1 to main.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 04:52):

ArtBlnd created PR review comment:

  src\isa\x64\lower.isle:275:3: type error: Used non-pure constructor 'ty_scalar_float' in pure expression context
  src\isa\x64\lower.isle:337:3: type error: Used non-pure constructor 'ty_scalar_float' in pure expression context
  ```

  ```
(decl ty_scalar_float (Type) Type)
(extern extractor ty_scalar_float ty_scalar_float)

I don't think this is possible now. It should be separate to other patch.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 04:52):

ArtBlnd submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 03 2022 at 04:55):

ArtBlnd updated PR #5036 from x86_64-float-bitops1 to main.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 04 2022 at 00:03):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 04 2022 at 00:03):

abrown created PR review comment:

Can you re-phrase your question? I'm not sure exactly what you mean...

view this post on Zulip Wasmtime GitHub notifications bot (Nov 04 2022 at 02:33):

ArtBlnd created PR review comment:

Oh... I misunderstood. just nevermind.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 04 2022 at 02:33):

ArtBlnd submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 04 2022 at 02:33):

ArtBlnd edited PR review comment.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 01:56):

ArtBlnd submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 01:56):

ArtBlnd created PR review comment:

I don't think this works. the andnot will negative the float value itself. here is result.

Caused by:
    Failed test: run: %bnot_f32(0.0) == -NaN:0x3fffff, actual: 0.0

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 01:57):

ArtBlnd submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 01:57):

ArtBlnd created PR review comment:

You can check over here https://www.felixcloutier.com/x86/andnps#andnps--128-bit-legacy-sse-version-

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 23:33):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 23:33):

abrown created PR review comment:

Oh, you're right! The NOT happens before the AND. Sorry for the distraction, let me take one more look at everything else...

view this post on Zulip Wasmtime GitHub notifications bot (Nov 09 2022 at 23:35):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 18 2022 at 04:05):

ArtBlnd updated PR #5036 from x86_64-float-bitops1 to main.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 18 2022 at 15:45):

abrown merged PR #5036.


Last updated: Dec 23 2024 at 12:05 UTC