math.wast 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. ;;-------------------------------------------------------------------------------------------------------
  2. ;; Copyright (C) Microsoft. All rights reserved.
  3. ;; Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. ;;-------------------------------------------------------------------------------------------------------
  5. (module
  6. (func (export "ctz") (param $a i32) (result i32)
  7. (i32.ctz (get_local $a))
  8. )
  9. (func (export "i32_div_s") (param $x i32) (param $y i32) (result i32)
  10. (i32.div_s (get_local $x) (get_local $y))
  11. )
  12. (func (export "i32_div_s_by_two") (param $x i32) (result i32)
  13. (i32.div_s (get_local $x) (i32.const 2))
  14. )
  15. (func (export "i32_div_s_over") (result i32)
  16. (i32.div_s (i32.const 0x80000000 ) (i32.const 0xffffffff))
  17. )
  18. (func (export "i32_div_s_zero") (param $x i32) (result i32)
  19. (i32.div_s (get_local $x) (i32.const 0))
  20. )
  21. (func (export "i32_div_u") (param $x i32) (param $y i32) (result i32)
  22. (i32.div_u (get_local $x) (get_local $y))
  23. )
  24. (func (export "i32_rem_s") (param $x i32) (param $y i32) (result i32)
  25. (i32.rem_s (get_local $x) (get_local $y))
  26. )
  27. (func (export "i32_rem_u") (param $x i32) (param $y i32) (result i32)
  28. (i32.rem_u (get_local $x) (get_local $y))
  29. )
  30. (func (export "ctzI64") (param $a i64) (result i64)
  31. (i64.ctz (get_local $a))
  32. )
  33. (func (export "i64_div_s") (param $x i64) (param $y i64) (result i64)
  34. (i64.div_s (get_local $x) (get_local $y))
  35. )
  36. (func (export "i64_div_u") (param $x i64) (param $y i64) (result i64)
  37. (i64.div_u (get_local $x) (get_local $y))
  38. )
  39. (func (export "i64_rem_s") (param $x i64) (param $y i64) (result i64)
  40. (i64.rem_s (get_local $x) (get_local $y))
  41. )
  42. (func (export "i64_rem_u") (param $x i64) (param $y i64) (result i64)
  43. (i64.rem_u (get_local $x) (get_local $y))
  44. )
  45. (func (export "i64_div_s_over") (result i64)
  46. (i64.div_s (i64.const 0x8000000000000000 ) (i64.const 0xffffffffffffffff)) ;; overflow
  47. )
  48. )