Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Do not merge yet) Add simple float.max specialization #4811

Open
wants to merge 15 commits into
base: branch/default
Choose a base branch
from

Conversation

gitlab-importer
Copy link

In GitLab by @tekknolagi on Sep 28, 2023, 19:06

--HG--
branch : mb-dup

I don't know a place to put this
Not sure how to run it yet, though
Figure out how to run the runner tests (they are parameterized):

./pytest.py -vv rpython/jit/backend/x86/test/test_runner.py
Turns out I was accidentally passing in the address of the function instead of
the args.
@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Sep 28, 2023, 19:06

requested review from @cfbolz

@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Sep 28, 2023, 19:07

I want to add some test for disassembly

@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Sep 28, 2023, 19:15

added 1 commit

  • d6dfc767 - Add LLFrame/runner and test

Compare with previous version

@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Sep 28, 2023, 19:19

added 1 commit

  • 7d89f44e - Add runner test

Compare with previous version

@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Sep 28, 2023, 19:28

added 1 commit

  • 165a7914 - Fix assembler for float_max

Compare with previous version

@gitlab-importer
Copy link
Author

In GitLab by @tekknolagi on Oct 2, 2023, 04:05

added 9 commits

  • 2f1dc986 - WIP
  • 4c2aa1cc - s/MAXPD/MAXSD/g
  • 9f5c5b60 - Add TODO comment
  • 63fe90ad - Fix args to MAXSD
  • eddcf4dd - Remove comment
  • 5df443a4 - Add -0.0 case
  • f011413f - Try both operand orders
  • 4778fcea - Add comment about nan behavior
  • 3031ddfa - Update with discovery

Compare with previous version

return max(a, b)
res = self.interp_operations(f, [-5.25, 3])
assert res == 3
# TODO(emacs): Figure out why nan causes issues here
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be because "If only one value is a NaN (SNaN or QNaN) for this instruction, the second source operand, either a NaN or a valid floating-point value, is written to the result"?

https://www.felixcloutier.com/x86/maxsd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants