|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0 |
|
| #
e3550f19 |
| 11-Mar-2022 |
Peter Steinfeld <[email protected]> |
[flang] Improve runtime crash messages
Where possible, I added additional information to the messages to help programmers figure out what went wrong. I also removed all uses of the word "bad" from
[flang] Improve runtime crash messages
Where possible, I added additional information to the messages to help programmers figure out what went wrong. I also removed all uses of the word "bad" from the messages since (to me) that implies a moral judgement rather than a programming error. I replaced it with either "invalid" or "unsupported" where appropriate.
Differential Revision: https://reviews.llvm.org/D121493
show more ...
|
|
Revision tags: llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
| #
77ff6f7d |
| 26-Nov-2021 |
Peter Klausler <[email protected]> |
[flang] Define & implement a lowering support API IsContiguous() in runtime
Create a new flang/runtime/support.cpp module to hold miscellaneous runtime APIs to support lowering, and define an API Is
[flang] Define & implement a lowering support API IsContiguous() in runtime
Create a new flang/runtime/support.cpp module to hold miscellaneous runtime APIs to support lowering, and define an API IsContiguous() to wrap the member function predicate Descriptor::IsContiguous(). And do a little clean-up of other API headers that don't need to expose Runtime/descriptor.h.
Differential Revision: https://reviews.llvm.org/D114752
show more ...
|
|
Revision tags: llvmorg-13.0.1-rc1, llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3 |
|
| #
830c0b90 |
| 01-Sep-2021 |
Peter Klausler <[email protected]> |
[flang] Move runtime API headers to flang/include/flang/Runtime
Move the closure of the subset of flang/runtime/*.h header files that are referenced by source files outside flang/runtime (apart from
[flang] Move runtime API headers to flang/include/flang/Runtime
Move the closure of the subset of flang/runtime/*.h header files that are referenced by source files outside flang/runtime (apart from unit tests) into a new directory (flang/include/flang/Runtime) so that relative include paths into ../runtime need not be used.
flang/runtime/pgmath.h.inc is moved to flang/include/flang/Evaluate; it's not used by the runtime.
Differential Revision: https://reviews.llvm.org/D109107
show more ...
|
|
Revision tags: llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1 |
|
| #
1dbc9b53 |
| 29-Jul-2021 |
Mark Leair <[email protected]> |
Fix runtime internal error with certain intrinsics that can take a scalar result descriptor (e.g., maxloc, minloc, maxval, minval, all, any, count, parity, findloc, etc.)
Also add a scalar case for
Fix runtime internal error with certain intrinsics that can take a scalar result descriptor (e.g., maxloc, minloc, maxval, minval, all, any, count, parity, findloc, etc.)
Also add a scalar case for these intrinsic unit tests.
Differential Revision: https://reviews.llvm.org/D106820
show more ...
|
|
Revision tags: llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2 |
|
| #
fdf33771 |
| 15-Jun-2021 |
peter klausler <[email protected]> |
[flang] Implement runtime for IALL & IANY
We had IPARITY (xor-reduction) but I missed IALL (and) and IANY (or).
Differential Revision: https://reviews.llvm.org/D104339
|
| #
47f18af5 |
| 15-Jun-2021 |
peter klausler <[email protected]> |
[flang] Fold MAXVAL & MINVAL
Implement constant folding for the reduction transformational intrinsic functions MAXVAL and MINVAL.
In anticipation of more folding work to follow, with (I hope) some
[flang] Fold MAXVAL & MINVAL
Implement constant folding for the reduction transformational intrinsic functions MAXVAL and MINVAL.
In anticipation of more folding work to follow, with (I hope) some common infrastructure, these two have been implemented in a new header file.
Differential Revision: https://reviews.llvm.org/D104337
show more ...
|
|
Revision tags: llvmorg-12.0.1-rc1 |
|
| #
50e0b298 |
| 12-May-2021 |
peter klausler <[email protected]> |
[flang] Implement DOT_PRODUCT in the runtime
API, implementation, and basic tests for the transformational reduction intrinsic function DOT_PRODUCT in the runtime support library.
Differential Revi
[flang] Implement DOT_PRODUCT in the runtime
API, implementation, and basic tests for the transformational reduction intrinsic function DOT_PRODUCT in the runtime support library.
Differential Revision: https://reviews.llvm.org/D102351
show more ...
|
| #
01c78a0b |
| 06-May-2021 |
peter klausler <[email protected]> |
[flang] Implement NORM2 in the runtime
Implement the reduction transformational intrinsic function NORM2 in the runtime, using infrastructure already in place for MAXVAL & al.
Differential Revision
[flang] Implement NORM2 in the runtime
Implement the reduction transformational intrinsic function NORM2 in the runtime, using infrastructure already in place for MAXVAL & al.
Differential Revision: https://reviews.llvm.org/D102024
show more ...
|
| #
beb5ac8b |
| 22-Apr-2021 |
peter klausler <[email protected]> |
[flang] (NFC) Break up flang/runtime/reduction.cpp
The single source file reduction.cpp is a little large in terms of both source lines and generated text bytes, so split SUM, PRODUCT, FINDLOC, and
[flang] (NFC) Break up flang/runtime/reduction.cpp
The single source file reduction.cpp is a little large in terms of both source lines and generated text bytes, so split SUM, PRODUCT, FINDLOC, and MAXLOC/MAXVAL/MINLOC/MINVAL off into their own C++ source files that share a set of implementation function templates now in a common header.
Differential Revision: https://reviews.llvm.org/D101111
show more ...
|
| #
8d672c0b |
| 20-Apr-2021 |
peter klausler <[email protected]> |
[flang] Implement IPARITY, PARITY, and FINDLOC reductions
Define APIs for, and implement, these three more recently-introduced standard reduction transformational intrinsic functions to the runtime.
[flang] Implement IPARITY, PARITY, and FINDLOC reductions
Define APIs for, and implement, these three more recently-introduced standard reduction transformational intrinsic functions to the runtime.
Differential Revision: https://reviews.llvm.org/D100863
show more ...
|
|
Revision tags: llvmorg-12.0.0, llvmorg-12.0.0-rc5 |
|
| #
c115c289 |
| 02-Apr-2021 |
peter klausler <[email protected]> |
[flang] Address more MSVC build issues with reductions
Move #include <complex.h> to complex-reduction.h, where it is needed in MSVC builds.
Exclude code that requires a native 128-bit integer type
[flang] Address more MSVC build issues with reductions
Move #include <complex.h> to complex-reduction.h, where it is needed in MSVC builds.
Exclude code that requires a native 128-bit integer type from compilation by MSVC.
Differential Revision: https://reviews.llvm.org/D99806
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc4 |
|
| #
e372e0f9 |
| 31-Mar-2021 |
peter klausler <[email protected]> |
[flang] Implement reductions in the runtime
Add runtime APIs, implementations, and tests for ALL, ANY, COUNT, MAXLOC, MAXVAL, MINLOC, MINVAL, PRODUCT, and SUM reduction transformantional intrinsic f
[flang] Implement reductions in the runtime
Add runtime APIs, implementations, and tests for ALL, ANY, COUNT, MAXLOC, MAXVAL, MINLOC, MINVAL, PRODUCT, and SUM reduction transformantional intrinsic functions for all relevant argument and result types and kinds, both without DIM= arguments (total reductions) and with (partial reductions).
Complex-valued reductions have their APIs in C so that C's _Complex types can be used for their results.
Some infrastructure work was also necessary or noticed: * Usage of "long double" in the compiler was cleaned up a bit, and host dependences on x86 / MSVC have been isolated in a new Common/long-double header. * Character comparison has been exposed via an extern template so that reductions could use it. * Mappings from Fortran type category/kind to host C++ types and vice versa have been isolated into runtime/cpp-type.h and then used throughout the runtime as appropriate. * The portable 128-bit integer package in Common/uint128.h was generalized to support signed comparisons. * Bugs in descriptor indexing code were fixed.
Differential Revision: https://reviews.llvm.org/D99666
show more ...
|