platform/upstream/llvm.git
4 years ago[flang] Fix bug flang-compiler/f18#735
peter klausler [Wed, 11 Sep 2019 23:48:15 +0000 (16:48 -0700)]
[flang] Fix bug flang-compiler/f18#735

Original-commit: flang-compiler/f18@dccb16d492685cbe02771c2f78a60cbd46fc1bac
Reviewed-on: https://github.com/flang-compiler/f18/pull/738
Tree-same-pre-rewrite: false

4 years ago[flang] Improve error message (add types)
peter klausler [Wed, 11 Sep 2019 23:48:03 +0000 (16:48 -0700)]
[flang] Improve error message (add types)

Original-commit: flang-compiler/f18@48b8f32d516e38cfd80f4759c4b78a08a24ebdf3
Reviewed-on: https://github.com/flang-compiler/f18/pull/738
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#734 from flang-compiler/jpr-fix-700
jeanPerier [Thu, 12 Sep 2019 07:31:29 +0000 (00:31 -0700)]
[flang] Merge pull request flang-compiler/f18#734 from flang-compiler/jpr-fix-700

Add NEW_LINE intrinsic to the intrinsic table

Original-commit: flang-compiler/f18@9c10e02d396f3e1ce7cd636fc58f3093abc3c53a
Reviewed-on: https://github.com/flang-compiler/f18/pull/734

4 years ago[flang] Add NEW_LINE intrinsic to the intrinsic table
Jean Perier [Wed, 11 Sep 2019 10:01:55 +0000 (03:01 -0700)]
[flang] Add NEW_LINE intrinsic to the intrinsic table
NEW_LINE intrinsic folding was already implemented but it had not
yet been added the the intrinsic table and was therefore not yet
recognised an intrinsic.
Add related tests.

Original-commit: flang-compiler/f18@42fcf5b5f1e63267a024afaad39f012982c8abc1
Reviewed-on: https://github.com/flang-compiler/f18/pull/734

4 years ago[flang] Merge pull request flang-compiler/f18#737 from flang-compiler/pmk-m-in-m
Peter Klausler [Wed, 11 Sep 2019 23:40:09 +0000 (16:40 -0700)]
[flang] Merge pull request flang-compiler/f18#737 from flang-compiler/pmk-m-in-m

Allow module, submodule, and program names to be used as local identi…

Original-commit: flang-compiler/f18@ffc90d0b1c352ddb55e346469061a6b775e51803
Reviewed-on: https://github.com/flang-compiler/f18/pull/737

4 years ago[flang] Extend comments
peter klausler [Wed, 11 Sep 2019 20:15:32 +0000 (13:15 -0700)]
[flang] Extend comments

Original-commit: flang-compiler/f18@9f918c2559698a893aaa917dc7b109c226c6d49f
Reviewed-on: https://github.com/flang-compiler/f18/pull/737

4 years ago[flang] Allow module, submodule, and program names to be used as local identifiers...
peter klausler [Wed, 11 Sep 2019 19:30:24 +0000 (12:30 -0700)]
[flang] Allow module, submodule, and program names to be used as local identifiers.  Check for USE of m in m.

Original-commit: flang-compiler/f18@9abfd9e45001bba6f5e4b5a6e08674ce92789052
Reviewed-on: https://github.com/flang-compiler/f18/pull/737
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#698 from tinlun/master
Tim Keith [Wed, 11 Sep 2019 18:10:57 +0000 (11:10 -0700)]
[flang] Merge pull request flang-compiler/f18#698 from tinlun/master

Added -fget-definition and -fget-symbols-sources.

Original-commit: flang-compiler/f18@24caaea2bf729fdc46d29981b10c668d92b0ccb9
Reviewed-on: https://github.com/flang-compiler/f18/pull/698

4 years ago[flang] Using new Prov to Cooked mappings for get-definition.
Tin Huynh [Mon, 9 Sep 2019 18:36:42 +0000 (11:36 -0700)]
[flang] Using new Prov to Cooked mappings for get-definition.

Original-commit: flang-compiler/f18@5a42c5c9e19c5a56fdc256db56d32e3564e72765
Reviewed-on: https://github.com/flang-compiler/f18/pull/698

4 years ago[flang] FindOffsetLineAndColumn also uses SourcePosition.
Tin Huynh [Thu, 5 Sep 2019 17:05:45 +0000 (10:05 -0700)]
[flang] FindOffsetLineAndColumn also uses SourcePosition.

New tests for COMMON and BLOCK.
Added CHECK-ONCE to test_any.sh. Make sure pattern only occurs once.

Original-commit: flang-compiler/f18@ad82dafcf905c521904a0120462ad1636917fc8c
Reviewed-on: https://github.com/flang-compiler/f18/pull/698
Tree-same-pre-rewrite: false

4 years ago[flang] Added -fget-definitions and -fget-all-symbols.
Tin Huynh [Mon, 26 Aug 2019 22:16:57 +0000 (15:16 -0700)]
[flang] Added -fget-definitions and -fget-all-symbols.

- -fget-definitions finds the definition of the symbol under specified source
position.
- -fget-all-symbols finds definition locations of all symbols in a document. For
symbols found in other modules, shows which module the symbol came from.
- Tests.
- New structure SourcePosition with file, line, column information.

Original-commit: flang-compiler/f18@e0099b0900b47ff1d8903c2462bb8a42ecc7999b
Reviewed-on: https://github.com/flang-compiler/f18/pull/698
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#731 from flang-compiler/pmk-fix-728
Peter Klausler [Wed, 11 Sep 2019 16:16:29 +0000 (09:16 -0700)]
[flang] Merge pull request flang-compiler/f18#731 from flang-compiler/pmk-fix-728

Recover better from syntax errors on USE statements

Original-commit: flang-compiler/f18@2c45d65b88e1cffa59d0eafa08c5ee5762a86155
Reviewed-on: https://github.com/flang-compiler/f18/pull/731

4 years ago[flang] Recover better from syntax errors on USE statements
peter klausler [Tue, 10 Sep 2019 22:29:09 +0000 (15:29 -0700)]
[flang] Recover better from syntax errors on USE statements

Original-commit: flang-compiler/f18@29968698d9afe367de92d536e54a048cc998b359
Reviewed-on: https://github.com/flang-compiler/f18/pull/731

4 years ago[flang] Merge pull request flang-compiler/f18#732 from flang-compiler/pmk-call
Peter Klausler [Wed, 11 Sep 2019 00:09:07 +0000 (17:09 -0700)]
[flang] Merge pull request flang-compiler/f18#732 from flang-compiler/pmk-call

Begin semantic checks for calls

Original-commit: flang-compiler/f18@4d6ae6fab014b3e7c48572e2f843425f0796721b
Reviewed-on: https://github.com/flang-compiler/f18/pull/732

4 years ago[flang] Address review comment
peter klausler [Wed, 11 Sep 2019 00:08:18 +0000 (17:08 -0700)]
[flang] Address review comment

Original-commit: flang-compiler/f18@65dc8d4996b74148a06bc73d59c318a2bf38fe07
Reviewed-on: https://github.com/flang-compiler/f18/pull/732

4 years ago[flang] Add static declaration checker; get call01.f90 to pass
peter klausler [Tue, 10 Sep 2019 22:51:46 +0000 (15:51 -0700)]
[flang] Add static declaration checker; get call01.f90 to pass

Original-commit: flang-compiler/f18@7cc5bc76174d36c90b8273b0a892a229d8787af2
Reviewed-on: https://github.com/flang-compiler/f18/pull/732
Tree-same-pre-rewrite: false

4 years ago[flang] Check recursive calls for NON_RECURSIVE and assumed-length CHARACTER(*)
peter klausler [Tue, 10 Sep 2019 00:01:06 +0000 (17:01 -0700)]
[flang] Check recursive calls for NON_RECURSIVE and assumed-length CHARACTER(*)

Original-commit: flang-compiler/f18@92777f8f669284ecd0fc4f73bd20f82e148ceba3
Reviewed-on: https://github.com/flang-compiler/f18/pull/732
Tree-same-pre-rewrite: false

4 years ago[flang] commit to switch branches
peter klausler [Wed, 4 Sep 2019 19:45:08 +0000 (12:45 -0700)]
[flang] commit to switch branches

Some groundwork

Original-commit: flang-compiler/f18@64ebeb511cc823e8ea7ad9647d0475542930f506
Reviewed-on: https://github.com/flang-compiler/f18/pull/732
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#686 from flang-compiler/ps-stmt-stack
psteinfeld [Tue, 10 Sep 2019 22:25:00 +0000 (15:25 -0700)]
[flang] Merge pull request flang-compiler/f18#686 from flang-compiler/ps-stmt-stack

Changes to add an executable construct stack

Original-commit: flang-compiler/f18@2fc28c75386ee70e01a21533ee18bc1cba149e4c
Reviewed-on: https://github.com/flang-compiler/f18/pull/686

4 years ago[flang] Combined the implementations to ```Pre()``` and ```Post()``` functions that
Pete Steinfeld [Tue, 10 Sep 2019 21:42:34 +0000 (14:42 -0700)]
[flang] Combined the implementations to ```Pre()``` and ```Post()``` functions that
call `PushConstruct()``` and ```PopConstruct()``` following a genius
suggestion from Peter.

Original-commit: flang-compiler/f18@be2a03ebf479be8eda2529e6c47a7d44a073c455
Reviewed-on: https://github.com/flang-compiler/f18/pull/686

4 years ago[flang] Changed ```PushConstruct()``` to be a template, which moves the implicit
Pete Steinfeld [Tue, 10 Sep 2019 18:41:30 +0000 (11:41 -0700)]
[flang] Changed ```PushConstruct()``` to be a template, which moves the implicit
creation of the ```ConstructNode``` into ```PushConstruct()```.

Original-commit: flang-compiler/f18@3984566858743c1b18a7a53cb899e68bf951154a
Reviewed-on: https://github.com/flang-compiler/f18/pull/686
Tree-same-pre-rewrite: false

4 years ago[flang] Responses to review comments
Pete Steinfeld [Tue, 10 Sep 2019 16:21:12 +0000 (09:21 -0700)]
[flang] Responses to review comments

I changed the interface of ```PushConstruct()``` to take an rvalue reference as its only parameter and made the construction of the ```ConstructNode```s explicit in all of the ```Pre()``` functions for the various construct types.

Original-commit: flang-compiler/f18@f8be813874ac7a8021bd5e8138c7b421e166ea22
Reviewed-on: https://github.com/flang-compiler/f18/pull/686
Tree-same-pre-rewrite: false

4 years ago[flang] Responses to review comments and team meeting
Pete Steinfeld [Thu, 29 Aug 2019 23:02:37 +0000 (16:02 -0700)]
[flang] Responses to review comments and team meeting

The most significant change is that I replaced the stack of
ExecutableConstruct's with a stack composed of ConstructNode's, each of which
is a variant of the constructs that made up the type ExecutableConstruct.  This
change allows the nodes of the stack to be extended to include the types needed
for OMP semantic checking.

I also extended the existing test to include some correct DO loops with CYCLE
and EXIT statements to test the code more completely.

Original-commit: flang-compiler/f18@d26f34e3a4cf72f1b6c56ececf24afa7a6299ffd
Reviewed-on: https://github.com/flang-compiler/f18/pull/686
Tree-same-pre-rewrite: false

4 years ago[flang] Changes to add an executable construct stack
Pete Steinfeld [Mon, 26 Aug 2019 23:26:24 +0000 (16:26 -0700)]
[flang] Changes to add an executable construct stack
I added a stack of ExecutableConstruct's to SemanticsContext along with
functions to push and pop constructs.  I added code to the SemanticsVisitor
to use these new functions.  I also added functions Pre and Post functions
for UnlabeledStatement's so that we could isolate the source positions for
statements embedded in "if" statements to improve error messages.

I also added code to check-do.[h,cc] to use this new infrastructure to check
for CYCLE and EXIT statements that are not contained within DO constructs
along with a test.

Original-commit: flang-compiler/f18@b8370bdeb899791b9c841a7bd86e61412a92af22
Reviewed-on: https://github.com/flang-compiler/f18/pull/686
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#730 from flang-compiler/ps-issue725
psteinfeld [Tue, 10 Sep 2019 19:50:17 +0000 (12:50 -0700)]
[flang] Merge pull request flang-compiler/f18#730 from flang-compiler/ps-issue725

Fixed the declarations of IEEE_SUPPORT_FLAG and IEEE_SUPPORT_HALTING

Original-commit: flang-compiler/f18@238b9ee459599e3803a1d536479a4a2d9dc09723
Reviewed-on: https://github.com/flang-compiler/f18/pull/730

4 years ago[flang] Fixed the declarations of IEEE_SUPPORT_FLAG and IEEE_SUPPORT_HALTING to
Pete Steinfeld [Tue, 10 Sep 2019 19:43:16 +0000 (12:43 -0700)]
[flang] Fixed the declarations of IEEE_SUPPORT_FLAG and IEEE_SUPPORT_HALTING to
be functions rather than subroutines.  Note that Table 17.3 in the
standard summarizes the contents of IEEE_EXCEPTIONS with the details
specified in section 17.11.

Original-commit: flang-compiler/f18@fca58d479d2ab4578a029980f5144d11a46d5e78
Reviewed-on: https://github.com/flang-compiler/f18/pull/730

4 years ago[flang] Merge pull request flang-compiler/f18#723 from flang-compiler/sjs-storage...
Steve Scalpone [Tue, 10 Sep 2019 15:38:48 +0000 (08:38 -0700)]
[flang] Merge pull request flang-compiler/f18#723 from flang-compiler/sjs-storage-size

Add storage_size intrinsic.

Original-commit: flang-compiler/f18@f2ffcfafd2b04703879581df8727b98ffb508ea3
Reviewed-on: https://github.com/flang-compiler/f18/pull/723

4 years ago[flang] Update comment to reflect that STORAGE_SIZE is implemented.
Steve Scalpone [Tue, 10 Sep 2019 15:37:08 +0000 (08:37 -0700)]
[flang] Update comment to reflect that STORAGE_SIZE is implemented.

Original-commit: flang-compiler/f18@3c2431bbf8025856bd19e2c7b66aaf06b6acdbfe
Reviewed-on: https://github.com/flang-compiler/f18/pull/723

4 years ago[flang] Add storage_size intrinsic.
Steve Scalpone [Mon, 9 Sep 2019 21:33:04 +0000 (14:33 -0700)]
[flang] Add storage_size intrinsic.

Original-commit: flang-compiler/f18@bcde26a7c1373c3ccbcc8e216cf37c8b3530b06d
Reviewed-on: https://github.com/flang-compiler/f18/pull/723
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#699 from flang-compiler/jpr-fix-695
jeanPerier [Tue, 10 Sep 2019 12:53:28 +0000 (05:53 -0700)]
[flang] Merge pull request flang-compiler/f18#699 from flang-compiler/jpr-fix-695

Implement folding of x**y where y is real or complex

Original-commit: flang-compiler/f18@0efc573230a2038f64597c11b0e1a733c5bf5fff
Reviewed-on: https://github.com/flang-compiler/f18/pull/699

4 years ago[flang] address comment: add ',' for better formatting
Jean Perier [Tue, 10 Sep 2019 11:10:25 +0000 (04:10 -0700)]
[flang] address comment: add ',' for better formatting

Original-commit: flang-compiler/f18@0c854999853463b2113d672836cb343e98ae1c61
Reviewed-on: https://github.com/flang-compiler/f18/pull/699

4 years ago[flang] Implement folding of x**y where y is real or complex
Jean Perier [Fri, 30 Aug 2019 15:08:08 +0000 (08:08 -0700)]
[flang] Implement folding of x**y where y is real or complex
This was a TODO. The implementation uses the host runtime
function pow, either from libm or libpgmath.

Original-commit: flang-compiler/f18@ee581121120fe67a0990b8a41663b85b868035a7
Reviewed-on: https://github.com/flang-compiler/f18/pull/699
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#722 from flang-compiler/sjs-error-unit
Steve Scalpone [Mon, 9 Sep 2019 21:36:21 +0000 (14:36 -0700)]
[flang] Merge pull request flang-compiler/f18#722 from flang-compiler/sjs-error-unit

Define iso_fortran_env error_unit.

Original-commit: flang-compiler/f18@cb1752d5cb3913c14d819b328be7ff36cd8a406d
Reviewed-on: https://github.com/flang-compiler/f18/pull/722

4 years ago[flang] Define iso_fortran_env error_unit.
Steve Scalpone [Mon, 9 Sep 2019 19:57:10 +0000 (12:57 -0700)]
[flang] Define iso_fortran_env error_unit.
Provisionally use a value of 0 to match PGI.

Original-commit: flang-compiler/f18@ec7f0a0968d5552f9f95d1c24256d6fe40d36770
Reviewed-on: https://github.com/flang-compiler/f18/pull/722

4 years ago[flang] Merge pull request flang-compiler/f18#721 from flang-compiler/pmk-fix-errormsg
Peter Klausler [Mon, 9 Sep 2019 19:34:25 +0000 (12:34 -0700)]
[flang] Merge pull request flang-compiler/f18#721 from flang-compiler/pmk-fix-errormsg

Fix expected error messages in tests to correspond with recent update…

Original-commit: flang-compiler/f18@ffbc017c45527a3ac4825cbe33e732eee1f0ecee
Reviewed-on: https://github.com/flang-compiler/f18/pull/721

4 years ago[flang] Fix expected error messages in tests to correspond with recent update to...
peter klausler [Mon, 9 Sep 2019 18:40:31 +0000 (11:40 -0700)]
[flang] Fix expected error messages in tests to correspond with recent update to compiler

Original-commit: flang-compiler/f18@95202dd31384c042165184acd6ed2ec1c752ee0c
Reviewed-on: https://github.com/flang-compiler/f18/pull/721

4 years ago[flang] Merge pull request flang-compiler/f18#711 from flang-compiler/pmk-call-tests
Peter Klausler [Mon, 9 Sep 2019 17:43:53 +0000 (10:43 -0700)]
[flang] Merge pull request flang-compiler/f18#711 from flang-compiler/pmk-call-tests

Tests for call semantics

Original-commit: flang-compiler/f18@8fada8d5cd99e85bfe8c2fdd4defd7da36017ffc
Reviewed-on: https://github.com/flang-compiler/f18/pull/711

4 years ago[flang] Fix some Fortran and use existing messages for errors already caught.
peter klausler [Mon, 9 Sep 2019 17:43:19 +0000 (10:43 -0700)]
[flang] Fix some Fortran and use existing messages for errors already caught.

Original-commit: flang-compiler/f18@2d360e78ea3a872501f05904ec39f3c3ea3172a4
Reviewed-on: https://github.com/flang-compiler/f18/pull/711

4 years ago[flang] Finish test/semantics/call12.f90
peter klausler [Mon, 9 Sep 2019 17:15:45 +0000 (10:15 -0700)]
[flang] Finish test/semantics/call12.f90

Original-commit: flang-compiler/f18@d002f0ce377de4b71fd15a0fdee87c013476e93b
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] Fix Fortran in call10.f90
peter klausler [Fri, 6 Sep 2019 22:11:14 +0000 (15:11 -0700)]
[flang] Fix Fortran in call10.f90

Original-commit: flang-compiler/f18@8154a24232ad50344a6dd49c3983e8fe5e4c3a28
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] More tests
peter klausler [Fri, 6 Sep 2019 21:42:44 +0000 (14:42 -0700)]
[flang] More tests

Original-commit: flang-compiler/f18@bd5e95e40c179f4b462571074cebd107412ebe13
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] More tests
peter klausler [Fri, 6 Sep 2019 21:42:01 +0000 (14:42 -0700)]
[flang] More tests

Original-commit: flang-compiler/f18@52e3b74f4eb29085e6ebff30d0b695b8cd8cf521
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] call09.f90 and review comment
peter klausler [Wed, 4 Sep 2019 23:20:34 +0000 (16:20 -0700)]
[flang] call09.f90 and review comment

Original-commit: flang-compiler/f18@bc2ac270c688f5a36f723d3fcd95e2d431880404
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] call08.f90
peter klausler [Wed, 4 Sep 2019 23:06:04 +0000 (16:06 -0700)]
[flang] call08.f90

Original-commit: flang-compiler/f18@2bda489d4517a5b66e912a728e340ba0db5d3068
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] call07.f90
peter klausler [Wed, 4 Sep 2019 22:21:20 +0000 (15:21 -0700)]
[flang] call07.f90

Original-commit: flang-compiler/f18@a92307c3d6dba7221b2446b4e54e79212591845e
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] call06.f90
peter klausler [Wed, 4 Sep 2019 22:08:53 +0000 (15:08 -0700)]
[flang] call06.f90

Original-commit: flang-compiler/f18@81b64dacaabd48868d4ca58280aa905a191c7e3b
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] Add call04.f90 test
peter klausler [Wed, 4 Sep 2019 21:14:42 +0000 (14:14 -0700)]
[flang] Add call04.f90 test

Original-commit: flang-compiler/f18@0b329380cdcb90c5cb740277be8c16426f17e212
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] First three tests
peter klausler [Wed, 4 Sep 2019 20:26:41 +0000 (13:26 -0700)]
[flang] First three tests

Original-commit: flang-compiler/f18@600b5263b1d6fb5bb97749ac09b90f4195894283
Reviewed-on: https://github.com/flang-compiler/f18/pull/711
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#715 from flang-compiler/pmk-prov-to-ccs
Peter Klausler [Mon, 9 Sep 2019 17:27:24 +0000 (10:27 -0700)]
[flang] Merge pull request flang-compiler/f18#715 from flang-compiler/pmk-prov-to-ccs

Implement a mapping from source file Provenances to cooked stream offsets

Original-commit: flang-compiler/f18@f27eb362de3ee5325e77e3f30af41460c6c433c8
Reviewed-on: https://github.com/flang-compiler/f18/pull/715

4 years ago[flang] Remove needless include
peter klausler [Mon, 9 Sep 2019 17:26:30 +0000 (10:26 -0700)]
[flang] Remove needless include

Original-commit: flang-compiler/f18@5d2afd0ad37f82403c2445385aa76ab8b834ff36
Reviewed-on: https://github.com/flang-compiler/f18/pull/715

4 years ago[flang] Check for having compiled the inverted map before using it
peter klausler [Mon, 9 Sep 2019 16:25:49 +0000 (09:25 -0700)]
[flang] Check for having compiled the inverted map before using it

Original-commit: flang-compiler/f18@cef90ee11e26a3d4428389770a222ab90455e650
Reviewed-on: https://github.com/flang-compiler/f18/pull/715
Tree-same-pre-rewrite: false

4 years ago[flang] Implement provenance -> CharBlock map
peter klausler [Fri, 6 Sep 2019 20:00:47 +0000 (13:00 -0700)]
[flang] Implement provenance -> CharBlock map

Original-commit: flang-compiler/f18@f2e7b6cd72d0f5e6e97c7a8c338ceeb2479ccf52
Reviewed-on: https://github.com/flang-compiler/f18/pull/715
Tree-same-pre-rewrite: false

4 years ago[flang] Clean out some dead code, improve naming & comments
peter klausler [Thu, 5 Sep 2019 20:10:43 +0000 (13:10 -0700)]
[flang] Clean out some dead code, improve naming & comments

Original-commit: flang-compiler/f18@349555556572d5d4f96c3e3c2878c666d4e71e2a
Reviewed-on: https://github.com/flang-compiler/f18/pull/715
Tree-same-pre-rewrite: false

4 years ago[flang] [OpenMP] formalize `DEFAULTMAP` clause
Jinxin Yang [Sun, 8 Sep 2019 21:52:43 +0000 (14:52 -0700)]
[flang] [OpenMP] formalize `DEFAULTMAP` clause

OpenMP 4.5 only accepts `defaultmap(tofrom:scalar)`. The original implementation
only parses the entire `tofrom:scalar` string and does nothing else. This commit
makes it treat `tofrom` (`ImplicitBehavior`) and `scalar` (`VariableCategory`)
separately, which is clear and extendable for OpenMP 5.0 Spec.

Original-commit: flang-compiler/f18@12074dcd2cb65bdb97c9d48e4829288eac2dd732

4 years ago[flang] Merge pull request flang-compiler/f18#534 from flang-compiler/pmk-arr-comp
Peter Klausler [Mon, 9 Sep 2019 16:29:07 +0000 (09:29 -0700)]
[flang] Merge pull request flang-compiler/f18#534 from flang-compiler/pmk-arr-comp

Jot down thoughts on array expr and intrinsic evaluation for Jean

Original-commit: flang-compiler/f18@f9b1d69c00b2bbd39b4797998a6afb1e65de7210
Reviewed-on: https://github.com/flang-compiler/f18/pull/534

4 years ago[flang] More writing
peter klausler [Wed, 10 Jul 2019 21:32:46 +0000 (14:32 -0700)]
[flang] More writing

Original-commit: flang-compiler/f18@8dce9cb7f0487c82f7f2a277e4bea6f7aa1fd3d2
Reviewed-on: https://github.com/flang-compiler/f18/pull/534

4 years ago[flang] edits
peter klausler [Tue, 2 Jul 2019 18:45:35 +0000 (11:45 -0700)]
[flang] edits

Original-commit: flang-compiler/f18@ff3cab0bb5585f5a4386146c9b7eb9a79be04385
Reviewed-on: https://github.com/flang-compiler/f18/pull/534
Tree-same-pre-rewrite: false

4 years ago[flang] More edits
peter klausler [Fri, 28 Jun 2019 21:45:27 +0000 (14:45 -0700)]
[flang] More edits

Original-commit: flang-compiler/f18@6b9ce52250373644098930ee6f28cb4001095ba5
Reviewed-on: https://github.com/flang-compiler/f18/pull/534
Tree-same-pre-rewrite: false

4 years ago[flang] edits
peter klausler [Fri, 28 Jun 2019 20:53:05 +0000 (13:53 -0700)]
[flang] edits

Original-commit: flang-compiler/f18@07da944e4b9ab01880c3770d826ecf044958cad6
Reviewed-on: https://github.com/flang-compiler/f18/pull/534
Tree-same-pre-rewrite: false

4 years ago[flang] edits
peter klausler [Fri, 28 Jun 2019 20:48:57 +0000 (13:48 -0700)]
[flang] edits

Original-commit: flang-compiler/f18@729cc19e0f8e18cd13026723df6578c7e786c9c4
Reviewed-on: https://github.com/flang-compiler/f18/pull/534
Tree-same-pre-rewrite: false

4 years ago[flang] Jot down thoughts on array expr and intrinsic evaluation for Jean
peter klausler [Thu, 27 Jun 2019 23:01:20 +0000 (16:01 -0700)]
[flang] Jot down thoughts on array expr and intrinsic evaluation for Jean

Original-commit: flang-compiler/f18@83c72062d57f737955d8d3ebdfed4a08f5a9107b
Reviewed-on: https://github.com/flang-compiler/f18/pull/534
Tree-same-pre-rewrite: false

4 years ago[flang] Merge pull request flang-compiler/f18#683 from flang-compiler/pmk-call-doc
Peter Klausler [Fri, 6 Sep 2019 20:17:53 +0000 (13:17 -0700)]
[flang] Merge pull request flang-compiler/f18#683 from flang-compiler/pmk-call-doc

Requirements and first draft design for procedure call protocol

Original-commit: flang-compiler/f18@9e3ab7d32f8a550cfc46c3f556aa3f01fe9c8acf
Reviewed-on: https://github.com/flang-compiler/f18/pull/683

4 years ago[flang] Review comments
peter klausler [Wed, 4 Sep 2019 17:44:49 +0000 (10:44 -0700)]
[flang] Review comments

Original-commit: flang-compiler/f18@376359d456e120c037b21779ea9b8bdae6ab5b39
Reviewed-on: https://github.com/flang-compiler/f18/pull/683

4 years ago[flang] refinements
peter klausler [Thu, 29 Aug 2019 19:45:42 +0000 (12:45 -0700)]
[flang] refinements

Original-commit: flang-compiler/f18@a4de8161f934f6c134a8c5736a4a191591bcbf86
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] address review comments
peter klausler [Thu, 29 Aug 2019 17:58:36 +0000 (10:58 -0700)]
[flang] address review comments

Original-commit: flang-compiler/f18@793c15fd04a5f922ea80fede5f21a895f27c969e
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Simplify by using the term F77ish
peter klausler [Wed, 28 Aug 2019 20:59:48 +0000 (13:59 -0700)]
[flang] Simplify by using the term F77ish

Original-commit: flang-compiler/f18@063d9dc6c82eb98b80f2687c27fd8671e6e4c31d
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Limitations on function results with assumed type parameters
peter klausler [Wed, 28 Aug 2019 18:54:19 +0000 (11:54 -0700)]
[flang] Limitations on function results with assumed type parameters

Original-commit: flang-compiler/f18@4ba9fdb0eaa479486f2b808dea913fdb8b6a9aad
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Corrections and additions
peter klausler [Wed, 28 Aug 2019 18:25:55 +0000 (11:25 -0700)]
[flang] Corrections and additions

Original-commit: flang-compiler/f18@000301fcf987192585dfa01ca62a96c1ce49557c
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Correct obsolete comment in descriptor.h
peter klausler [Wed, 28 Aug 2019 16:14:46 +0000 (09:14 -0700)]
[flang] Correct obsolete comment in descriptor.h

Original-commit: flang-compiler/f18@8ff52c493ade974a69943eb9438cee9ba05b43f1
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Resolve some TODOs
peter klausler [Tue, 27 Aug 2019 22:59:46 +0000 (15:59 -0700)]
[flang] Resolve some TODOs

Original-commit: flang-compiler/f18@3f3e9c9320f3bd6662378f500dfab3c47243e993
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Enumerate semantics checks
peter klausler [Tue, 27 Aug 2019 21:27:14 +0000 (14:27 -0700)]
[flang] Enumerate semantics checks

Original-commit: flang-compiler/f18@3ddf31109adfa7cb313c8909982d6f87773e9a68
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] More research
peter klausler [Tue, 27 Aug 2019 20:09:31 +0000 (13:09 -0700)]
[flang] More research

Original-commit: flang-compiler/f18@1e2b0be07f6accac15028c8fd9c676d6199d760f
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Address some review comments
peter klausler [Tue, 27 Aug 2019 17:15:31 +0000 (10:15 -0700)]
[flang] Address some review comments

Original-commit: flang-compiler/f18@5666998b0fb8826d96b2272b6d13c5379b45adb2
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] fix typo, add examples
peter klausler [Mon, 26 Aug 2019 22:56:08 +0000 (15:56 -0700)]
[flang] fix typo, add examples

Original-commit: flang-compiler/f18@e0964fe07691265b2a1b74847ba2fb323b816278
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] refine naming
peter klausler [Mon, 26 Aug 2019 22:44:38 +0000 (15:44 -0700)]
[flang] refine naming

Original-commit: flang-compiler/f18@a4888a08cd18f0ed0219b88ba9a43122c1e2d229
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] naming
peter klausler [Mon, 26 Aug 2019 21:23:35 +0000 (14:23 -0700)]
[flang] naming

Original-commit: flang-compiler/f18@c3673287f8904e8a6ab32eb42fba9fac4e959ed7
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] trampolines
peter klausler [Mon, 26 Aug 2019 19:41:10 +0000 (12:41 -0700)]
[flang] trampolines

Original-commit: flang-compiler/f18@3e9cebe8dce2039942d06f63af7798f4503b1e7d
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] more writing
peter klausler [Fri, 23 Aug 2019 22:35:18 +0000 (15:35 -0700)]
[flang] more writing

Original-commit: flang-compiler/f18@16a8b0065a6e31cbce5a28b5230df1aff8968cab
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] more writing
peter klausler [Fri, 23 Aug 2019 22:22:53 +0000 (15:22 -0700)]
[flang] more writing

Original-commit: flang-compiler/f18@a067cca183197a4f004aed1649f368f50115cc30
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] More writing
peter klausler [Fri, 23 Aug 2019 21:35:38 +0000 (14:35 -0700)]
[flang] More writing

Original-commit: flang-compiler/f18@f475086c0c20b02f6793a298d0f4ad15dfdeda50
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Extract Calls.md into its own branch.
peter klausler [Fri, 23 Aug 2019 20:42:13 +0000 (13:42 -0700)]
[flang] Extract Calls.md into its own branch.

Original-commit: flang-compiler/f18@8a5a2c99dc7336f0790d7127224d16efc4e041cb
Reviewed-on: https://github.com/flang-compiler/f18/pull/683
Tree-same-pre-rewrite: false

4 years ago[flang] Add missing include for unordered_map
Jinxin Yang [Thu, 5 Sep 2019 21:11:14 +0000 (14:11 -0700)]
[flang] Add missing include for unordered_map

Original-commit: flang-compiler/f18@a9aadfb6071a4823caa39179ec1b69ca44a21a0f

4 years ago[flang] [OpenMP] extend `IF` clause to accept modifier on composite/combined constructs
Jinxin Yang [Thu, 5 Sep 2019 17:31:34 +0000 (10:31 -0700)]
[flang] [OpenMP] extend `IF` clause to accept modifier on composite/combined constructs

Original-commit: flang-compiler/f18@03302a15468bf9920618a2103d1e4fe45d6dc388

4 years ago[flang] [OpenMP] add structural checks for `TASKLOOP SIMD`
Jinxin Yang [Thu, 5 Sep 2019 16:33:23 +0000 (09:33 -0700)]
[flang] [OpenMP] add structural checks for `TASKLOOP SIMD`

Original-commit: flang-compiler/f18@21b4dde276fa9a19fe5046b608c5eea1a7610d37

4 years ago[flang] [OpenMP] update `declare simd` directive with exclusive set
Jinxin Yang [Thu, 5 Sep 2019 16:09:01 +0000 (09:09 -0700)]
[flang] [OpenMP] update `declare simd` directive with exclusive set

Original-commit: flang-compiler/f18@dc1bd8edc6968f8505429a9cba5db707c2d647d8

4 years ago[flang] [OpenMP] enable check for `IF` clause modifier
Jinxin Yang [Thu, 5 Sep 2019 10:15:23 +0000 (03:15 -0700)]
[flang] [OpenMP] enable check for `IF` clause modifier

Original-commit: flang-compiler/f18@f56fe4a3895a6ac444b45ad80b433c4dbeca4bbe

4 years ago[flang] [OpenMP] Add structural checks for `TASK`
Jinxin Yang [Thu, 5 Sep 2019 06:35:44 +0000 (23:35 -0700)]
[flang] [OpenMP] Add structural checks for `TASK`

1. fix `OmpIfClause` on `Task`
2. add structural checks

Original-commit: flang-compiler/f18@a77830a191989d7885337cf6182ac82ccf9c5ae9

4 years ago[flang] [OpenMP] fix type for `Final` clause
Jinxin Yang [Thu, 5 Sep 2019 00:32:01 +0000 (17:32 -0700)]
[flang] [OpenMP] fix type for `Final` clause

The type should be `ScalarLogicalExpr`.

Original-commit: flang-compiler/f18@97e4282d7c05d38ebfbdc1ac661dc5d629278d0a

4 years ago[flang] [OpenMP] Expand full sets for `do`, `simd`, and `do simd`
Jinxin Yang [Wed, 4 Sep 2019 23:34:38 +0000 (16:34 -0700)]
[flang] [OpenMP] Expand full sets for `do`, `simd`, and `do simd`

Original-commit: flang-compiler/f18@1f5bbeb3ea18456425804198fa03aeb8026a207b

4 years ago[flang] Merge pull request flang-compiler/f18#688 from DavidTruby/taskloop
Steve Scalpone [Thu, 5 Sep 2019 06:01:29 +0000 (23:01 -0700)]
[flang] Merge pull request flang-compiler/f18#688 from DavidTruby/taskloop

Implement semantic checking for TASKLOOP

Original-commit: flang-compiler/f18@a5786851fab78aa03e3155922589fa259e600574
Reviewed-on: https://github.com/flang-compiler/f18/pull/688

4 years ago[flang] Implement semantic checking for TASKLOOP
David Truby [Tue, 27 Aug 2019 08:34:29 +0000 (09:34 +0100)]
[flang] Implement semantic checking for TASKLOOP

Original-commit: flang-compiler/f18@a8e65f2c2d27cc9584ed493d822fa44d514edc37
Reviewed-on: https://github.com/flang-compiler/f18/pull/688

4 years ago[flang] Merge pull request flang-compiler/f18#697 from flang-compiler/tsk-crayptr
Tim Keith [Wed, 4 Sep 2019 23:57:02 +0000 (16:57 -0700)]
[flang] Merge pull request flang-compiler/f18#697 from flang-compiler/tsk-crayptr

Name resolution for Cray pointers

Original-commit: flang-compiler/f18@a18c5ebed0910bc9492614c2ded5b66f7f89ae9f
Reviewed-on: https://github.com/flang-compiler/f18/pull/697

4 years ago[flang] Name resolution for Cray pointers
Tim Keith [Wed, 4 Sep 2019 23:55:08 +0000 (16:55 -0700)]
[flang] Name resolution for Cray pointers

Resolve the pointer and pointee names in a `BasedPointerStmt` and
enforce some of the constraints on them. There are still some
constraints to be implemented, mainly about what kind of attributes
the pointers and pointees can have.

The rules for these are a little vague. I mostly followed
- Cray Fortran Reference Manual section 9.3.2
- https://gcc.gnu.org/onlinedocs/gfortran/Cray-pointers.html
- VSI Fortran for OpenVMS Language Reference Manual section B.11

Note that the first two use the term "Cray pointer" but the last does
not. That is confusing because you have to know from context whether
it is referring to Cray pointers or Fortran pointers, so I used
"Cray pointer" and "Cray pointee" in error messages to refer to the
two names in the pointer statement.

Original-commit: flang-compiler/f18@cabb112be2922ee2be9e29cfedcc30053c9a2864
Reviewed-on: https://github.com/flang-compiler/f18/pull/697

4 years ago[flang] Merge pull request flang-compiler/f18#710 from flang-compiler/tsk-issue709
Tim Keith [Wed, 4 Sep 2019 23:33:22 +0000 (16:33 -0700)]
[flang] Merge pull request flang-compiler/f18#710 from flang-compiler/tsk-issue709

Fix declaration of module procedure subprograms

Original-commit: flang-compiler/f18@b56bc365bb57fb5d810da6e54409066ade35d9c8
Reviewed-on: https://github.com/flang-compiler/f18/pull/710

4 years ago[flang] Fix declaration of module procedure subprograms
Tim Keith [Wed, 4 Sep 2019 22:15:57 +0000 (15:15 -0700)]
[flang] Fix declaration of module procedure subprograms

Names of subprograms declared with MODULE PROCEDURE in a submodule
were not found correctly. The fix is to separate the handling of
these from other subprograms. The subprogram being defined must have
been declared in the same module or an ancestor module/submodule.

Fixes flang-compiler/f18#709

Original-commit: flang-compiler/f18@80b635d34355d657a807e7f276b8d40d191bcef9
Reviewed-on: https://github.com/flang-compiler/f18/pull/710

4 years ago[flang] Merge pull request flang-compiler/f18#706 from flang-compiler/sjs-cmplx
Steve Scalpone [Wed, 4 Sep 2019 19:41:09 +0000 (12:41 -0700)]
[flang] Merge pull request flang-compiler/f18#706 from flang-compiler/sjs-cmplx

Fold more cases of cmplx and dcmplx.

Original-commit: flang-compiler/f18@e42947dcde7342e39dc7c117b5c978e6d35720fd
Reviewed-on: https://github.com/flang-compiler/f18/pull/706

4 years ago[flang] Fold more cases of cmplx and dcmplx.
Steve Scalpone [Mon, 2 Sep 2019 22:02:46 +0000 (15:02 -0700)]
[flang] Fold more cases of cmplx and dcmplx.

Original-commit: flang-compiler/f18@57401319b04514c123307758414377444e490522
Reviewed-on: https://github.com/flang-compiler/f18/pull/706

4 years ago[flang] Merge pull request flang-compiler/f18#705 from flang-compiler/sjs-dreal
Steve Scalpone [Wed, 4 Sep 2019 02:05:55 +0000 (19:05 -0700)]
[flang] Merge pull request flang-compiler/f18#705 from flang-compiler/sjs-dreal

Add support and documentation for DREAL.

Original-commit: flang-compiler/f18@e14461455f562ca788933d327ee6da58333d1f6f
Reviewed-on: https://github.com/flang-compiler/f18/pull/705

4 years ago[flang] Add support and documentation for DREAL.
Steve Scalpone [Mon, 2 Sep 2019 20:54:01 +0000 (13:54 -0700)]
[flang] Add support and documentation for DREAL.

Original-commit: flang-compiler/f18@5b6a2dc26ccd4faf56543ccb616a22d86812aa02
Reviewed-on: https://github.com/flang-compiler/f18/pull/705

4 years ago[flang] Merge pull request flang-compiler/f18#692 from flang-compiler/sjs-omp-doc
Steve Scalpone [Fri, 30 Aug 2019 18:22:51 +0000 (11:22 -0700)]
[flang] Merge pull request flang-compiler/f18#692 from flang-compiler/sjs-omp-doc

Create OpenMP-semantics.md

Original-commit: flang-compiler/f18@0948d3d1919ad30b22da9511204b547b1b56da75
Reviewed-on: https://github.com/flang-compiler/f18/pull/692