[dylan-lang/opendylan] c37d53: Add runtime support for float-invalid exceptions

GitHub <[email protected]>
Newsgroups gmane.comp.lang.dylan.gwydion.cvs
Message-ID <552a6b233a13c_7233fe4b441b29c94173@hookshot-fe5-cp1-prd.iad.github.net.mail>
  Branch: refs/heads/master
  Home:   https://github.com/dylan-lang/opendylan
  Commit: c37d539f000c72d85e0687824f138b8d71c05e2c
      https://github.com/dylan-lang/opendylan/commit/c37d539f000c72d85e0687824f138b8d71c05e2c
  Author: Ingo Albrecht <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/common-dylan/library.dylan
    M sources/dfmc/modeling/namespaces.dylan
    M sources/dylan/float.dylan
    M sources/dylan/number.dylan

  Log Message:
  -----------
  Add runtime support for float-invalid exceptions

This exception is thrown by libm functions, so it should
be translated to conditions just like the other ones.

* sources/dfmc/modeling/namespaces.dylan
  (&module dylan-extensions): Export float-invalid and
   <arithmetic-domain-error>.

* sources/dylan/float.dylan
  (float-invalid): New.

* sources/dylan/number.dylan
  (<arithmetic-domain-error>): New.

* sources/common-dylan/library.dylan
  (module common-extensions): Export <arithmetic-domain-error>.


  Commit: 5f6454c76861df07fc341268ff6d26f1b3c902a9
      https://github.com/dylan-lang/opendylan/commit/5f6454c76861df07fc341268ff6d26f1b3c902a9
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/harp/native-rtg/exception-handlers.dylan
    M sources/lib/run-time/harp-support/x86-freebsd/runtime.harp
    M sources/lib/run-time/harp-support/x86-freebsd/runtime.o
    M sources/lib/run-time/harp-support/x86-linux/runtime.harp
    M sources/lib/run-time/harp-support/x86-linux/runtime.o
    M sources/lib/run-time/harp-support/x86-windows/runtime.harp
    M sources/lib/run-time/harp-support/x86-windows/runtime.obj
    M sources/lib/run-time/x86-freebsd-exceptions.c
    M sources/lib/run-time/x86-linux-exceptions.c
    M sources/lib/run-time/x86-windows-exceptions.c

  Log Message:
  -----------
  [harp] Add HARP support for float-invalid.

* sources/harp/native-rtg/exception-handlers.dylan
   (dylan-float-invalid-error): New.

* sources/lib/run-time/harp-support/x86-freebsd/runtime.harp,
  sources/lib/run-time/harp-support/x86-freebsd/runtime.o,
  sources/lib/run-time/harp-support/x86-linux/runtime.harp,
  sources/lib/run-time/harp-support/x86-linux/runtime.o,
  sources/lib/run-time/harp-support/x86-windows/runtime.harp,
  sources/lib/run-time/harp-support/x86-windows/runtime.obj: Update.

* sources/lib/run-time/x86-freebsd-exceptions.c,
  sources/lib/run-time/x86-linux-exceptions.c:
   (DylanFPEHandler): Handle FPE_FLTINV, invoke float-invalid().

* sources/lib/run-time/x86-windows-exceptions.c:
   (DylanExceptionFilter): Handle EXCEPTION_FLT_INVALID_OPERATION,
    invoke float-invalid().


  Commit: 692f55d1f12dfb76be248c2805384ef9325f4c1a
      https://github.com/dylan-lang/opendylan/commit/692f55d1f12dfb76be248c2805384ef9325f4c1a
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/lib/run-time/x86-freebsd-exceptions.c

  Log Message:
  -----------
  [rt] Correctly set FP exception mask on FreeBSD.

* sources/lib/run-time/x86-freebsd-exceptions.c
   (EstablishDylanExceptionHandlers): Call RestoreFPState to set
    up the initial FP exception masks correctly.
   (RestoreFPState): Request float underflow exceptions and move
    to be located before the first call site.


  Commit: 83cc4cddc49761fb29b98b02ff58719c00a3a6fa
      https://github.com/dylan-lang/opendylan/commit/83cc4cddc49761fb29b98b02ff58719c00a3a6fa
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
    M sources/dfmc/llvm-back-end/llvm-exceptions.dylan
    M sources/lib/run-time/llvm-exceptions.c

  Log Message:
  -----------
  [llvm,rt] LLVM run-time support for float-invalid.

* sources/lib/run-time/llvm-exceptions.c
   (primitive_reset_float_environment): Request FE_INVALID.
   (DylanFPEHandler): Handle FE_INVALID.

* sources/dfmc/llvm-back-end/llvm-exceptions.dylan:
   (dylan-float-invalid-error): New.

* sources/app/llvm-runtime-generator/llvm-runtime-generator.dyla
   ($runtime-referenced-functions): Add #"float-invalid".


  Commit: 05876cb3ce519b1543c011688fe351e240574ece
      https://github.com/dylan-lang/opendylan/commit/05876cb3ce519b1543c011688fe351e240574ece
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/common-dylan/transcendentals.dylan

  Log Message:
  -----------
  [common-dylan] Remove explicit error check on sqrt.

* sources/common-dylan/transcendentals.dylan
  (sqrt): Remove explicit error check for an invalid operation.
    This will cause an <arithmetic-domain-error> to be raised.


  Commit: 3264ad62312eef507f85dbd13d5c5e3926da34d4
      https://github.com/dylan-lang/opendylan/commit/3264ad62312eef507f85dbd13d5c5e3926da34d4
  Author: Bruce Mitchener <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/common-dylan/tests/classes.dylan
    M sources/common-dylan/tests/specification.dylan

  Log Message:
  -----------
  [common-dylan,tests] Add test for float-invalid.

* sources/common-dylan/tests/classes.dylan
  (class-test <arithmetic-domain-error>): New.

* sources/common-dylan/tests/specification.dylan
  (module-spec common-extensions): Add <arithmetic-domain-error>.


  Commit: c6c9b0b8cf1d537bbb57a8cb1fb807d69da86b10
      https://github.com/dylan-lang/opendylan/commit/c6c9b0b8cf1d537bbb57a8cb1fb807d69da86b10
  Author: Peter S. Housel <[email protected]>
  Date:   2015-04-12 (Sun, 12 Apr 2015)

  Changed paths:
    M sources/app/llvm-runtime-generator/llvm-runtime-generator.dylan
    M sources/common-dylan/library.dylan
    M sources/common-dylan/tests/classes.dylan
    M sources/common-dylan/tests/specification.dylan
    M sources/common-dylan/transcendentals.dylan
    M sources/dfmc/llvm-back-end/llvm-exceptions.dylan
    M sources/dfmc/modeling/namespaces.dylan
    M sources/dylan/float.dylan
    M sources/dylan/number.dylan
    M sources/harp/native-rtg/exception-handlers.dylan
    M sources/lib/run-time/harp-support/x86-freebsd/runtime.harp
    M sources/lib/run-time/harp-support/x86-freebsd/runtime.o
    M sources/lib/run-time/harp-support/x86-linux/runtime.harp
    M sources/lib/run-time/harp-support/x86-linux/runtime.o
    M sources/lib/run-time/harp-support/x86-windows/runtime.harp
    M sources/lib/run-time/harp-support/x86-windows/runtime.obj
    M sources/lib/run-time/llvm-exceptions.c
    M sources/lib/run-time/x86-freebsd-exceptions.c
    M sources/lib/run-time/x86-linux-exceptions.c
    M sources/lib/run-time/x86-windows-exceptions.c

  Log Message:
  -----------
  Merge pull request #874 from waywardmonkeys/float-invalid

Float invalid


Compare: https://github.com/dylan-lang/opendylan/compare/7c8acc834736...c6c9b0b8cf1d

_______________________________________________
chatter mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/chatter
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.