Jean Perier [Fri, 1 Mar 2019 17:20:12 +0000 (09:20 -0800)]
[flang] renaming to focus scope on intrinsic runtime
Original-commit: flang-compiler/f18@
7cfd33b178d3ea3502ea87cb9416720f6cce4ba9
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Mar 2019 14:47:47 +0000 (06:47 -0800)]
[flang] made fenv errors internal errors
Original-commit: flang-compiler/f18@
f776c8db91d6cd3bee295d73b92f52688d59b362
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Mar 2019 13:50:06 +0000 (05:50 -0800)]
[flang] fix signed/unsigned comparison
Original-commit: flang-compiler/f18@
46148712e192da9bef7ae406639dcae714fefe1d
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Mar 2019 12:27:10 +0000 (04:27 -0800)]
[flang] Limits C++ implementation behaviors
The issue addressed here is the use of cast between object pointers
and function pointers. It is implementation defined because C++,
just like C, does not mandate that function and object pointers
must have the same size.
It is needed to have such cast because it is a will to ba able to
call inside F18 numerical function from libraries linked during
a Fortran program compilation in order to perform folding.
dlopen returns function pointers as void* that need to be cast to
pointer before use.
This change limits the usage of such cast inside ifdefs where POSIX
is required. In POSIX context, such cast is defined. Dlopen is
anyway used only if the environment is POSIX compliant.
In the rest of the code, opaque function pointers have been changed
from void* to void*(*)(). reinterpret_cast from function pointer to
function pointer are standard compliant.
Original-commit: flang-compiler/f18@
4b2f29a1289e955469c9b9778a7db0034b0fce70
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Mar 2019 12:15:04 +0000 (04:15 -0800)]
[flang] fixed use before init in elemental folding helper
Original-commit: flang-compiler/f18@
2cea43ddf94c369ff4446234e880a47ef306d847
Tree-same-pre-rewrite: false
Jean Perier [Mon, 25 Feb 2019 17:33:12 +0000 (09:33 -0800)]
[flang] add support to fold elemental intrisics over arrays
Original-commit: flang-compiler/f18@
c2fec22856b9bae7221036173c785d0732c7a7c3
Tree-same-pre-rewrite: false
Jean Perier [Mon, 25 Feb 2019 17:32:16 +0000 (09:32 -0800)]
[flang] answer comments on host/f18 type mappings
Original-commit: flang-compiler/f18@
96bce5c4d9348a325a6da30d08c78c56b5a906d3
Tree-same-pre-rewrite: false
Jean Perier [Fri, 22 Feb 2019 17:09:03 +0000 (09:09 -0800)]
[flang] Adds the possibility to use part of libpgmath for folding if it is available
Original-commit: flang-compiler/f18@
1c2093ff32bb4867d5024f076151e8b0160c7ede
Tree-same-pre-rewrite: false
Jean Perier [Fri, 22 Feb 2019 17:06:44 +0000 (09:06 -0800)]
[flang] answer some comments
Original-commit: flang-compiler/f18@
8161f77f60ee8efb491ace2b9e86d877296f655c
Tree-same-pre-rewrite: false
Jean Perier [Wed, 20 Feb 2019 16:55:00 +0000 (08:55 -0800)]
[flang] Use new indirection layer to host runtime in folding
Original-commit: flang-compiler/f18@
e8bb9c52afce3a4e6175bd4b1a3d4641f77491b9
Tree-same-pre-rewrite: false
Jean Perier [Wed, 20 Feb 2019 16:53:35 +0000 (08:53 -0800)]
[flang] Add RTE description structure and indirection layer to host runtime for folding
Original-commit: flang-compiler/f18@
329a61405204186d202b1072a17ee068e3d22b15
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Feb 2019 16:30:23 +0000 (08:30 -0800)]
[flang] Cherry picking commits from #PR275 and simplifying it
Commit was: Draft of elemental intrinsics function folding
Simplification was made in order to solve conflicts and
to prepare for commit of host math library indirection.
Conflicts:
lib/evaluate/fold.cc
Original-commit: flang-compiler/f18@
45678bc44c796509a0d70a079e3912b11ebea2ab
Tree-same-pre-rewrite: false
Jean Perier [Fri, 1 Feb 2019 16:28:21 +0000 (08:28 -0800)]
[flang] Add a utility to safely interact with host types
Original-commit: flang-compiler/f18@
32cd789dc2036e888a23e146ff5b251827a1c0c4
Tree-same-pre-rewrite: false
Steve Scalpone [Wed, 27 Mar 2019 06:36:45 +0000 (23:36 -0700)]
[flang] Merge pull request flang-compiler/f18#356 from flang-compiler/if-semantics
Implement semantic checks for if statements, if constructs and arithmetic ifs.
Original-commit: flang-compiler/f18@
87acf05d0bdd438c768b17bd2e5a893616f04978
Reviewed-on: https://github.com/flang-compiler/f18/pull/356
Steve Scalpone [Wed, 27 Mar 2019 03:48:51 +0000 (20:48 -0700)]
[flang] Inline the constructors for IF semantics checkers.
Remove some leftover cruft from check-if-stmt.h too.
Original-commit: flang-compiler/f18@
5c150289a9f48a2fccd15af40d73d4c1e4a0a984
Reviewed-on: https://github.com/flang-compiler/f18/pull/356
Steve Scalpone [Wed, 27 Mar 2019 01:03:33 +0000 (18:03 -0700)]
[flang] Remove the IF specific context classes; in these cases they
added no value. Change several error messages to better say
what is expected. Adjust tests for new messages. Reformat
with llvm7 clang-format.
Original-commit: flang-compiler/f18@
706b506e26ac675ac443c5b616abda5c4cbd0523
Reviewed-on: https://github.com/flang-compiler/f18/pull/356
Tree-same-pre-rewrite: false
Steve Scalpone [Tue, 26 Mar 2019 07:33:03 +0000 (00:33 -0700)]
[flang] Implement semantic checks for if statements, if constructs and
arithmetic ifs.
Original-commit: flang-compiler/f18@
deb2726aad63b9bc4c7d35872b4b4279fbcc78f8
Reviewed-on: https://github.com/flang-compiler/f18/pull/356
Tree-same-pre-rewrite: false
Eric Schweitz [Sat, 23 Mar 2019 18:10:09 +0000 (11:10 -0700)]
[flang] Merge pull request flang-compiler/f18#353 from schweitzpgi/master
When computing the stack of scopes, a label on the first statement
Original-commit: flang-compiler/f18@
f665939b6148362ec80d4f923dba41f319857192
Reviewed-on: https://github.com/flang-compiler/f18/pull/353
Eric [Sat, 23 Mar 2019 02:20:16 +0000 (19:20 -0700)]
[flang] When computing the stack of scopes, a label on the first statement
that begins a construct should be considered as in the parent scope
rather that within the scope of the construct that is being entered.
Original-commit: flang-compiler/f18@
93da3538bcd31b165535dadefe4d67ee81a42ad9
Reviewed-on: https://github.com/flang-compiler/f18/pull/353
Eric Schweitz [Fri, 22 Mar 2019 23:01:19 +0000 (16:01 -0700)]
[flang] Merge pull request flang-compiler/f18#351 from schweitzpgi/master
implement the DO WHILE check
Original-commit: flang-compiler/f18@
230e75f803e6cd8a4592780178b6002583509d69
Reviewed-on: https://github.com/flang-compiler/f18/pull/351
Eric Schweitz [Fri, 22 Mar 2019 22:39:51 +0000 (15:39 -0700)]
[flang] Simply the test per review comment.
Original-commit: flang-compiler/f18@
66ab8bb2aaf43edd6b6351c85b255d354f85345c
Reviewed-on: https://github.com/flang-compiler/f18/pull/351
Eric Schweitz [Fri, 22 Mar 2019 21:54:45 +0000 (14:54 -0700)]
[flang] implement the DO WHILE check
Original-commit: flang-compiler/f18@
c367551041af03d07da05c4174c8541d57e11ae6
Reviewed-on: https://github.com/flang-compiler/f18/pull/351
Tree-same-pre-rewrite: false
Steve Scalpone [Fri, 22 Mar 2019 17:14:42 +0000 (10:14 -0700)]
[flang] Merge pull request flang-compiler/f18#345 from kiranchandramohan/c1167
C1167 : Check for exit statments in do-concurrent
Original-commit: flang-compiler/f18@
f5f6ed8e983bbaffe078e4b206efe95a975a6c85
Reviewed-on: https://github.com/flang-compiler/f18/pull/345
Kiran Chandramohan [Tue, 19 Mar 2019 18:15:36 +0000 (18:15 +0000)]
[flang] C1167 : Check for exit statments in do-concurrent
Addresses https://github.com/flang-compiler/f18/issues/288
Original-commit: flang-compiler/f18@
2a99e1ea5404fce9fd88ea2c9710ec4c01975eb6
Reviewed-on: https://github.com/flang-compiler/f18/pull/345
jeanPerier [Fri, 22 Mar 2019 07:27:17 +0000 (00:27 -0700)]
[flang] Add test framework for folding and fix minor bug found with it
Merge pull request flang-compiler/f18#347 from flang-compiler/jpr1
Original-commit: flang-compiler/f18@
547c9f3561a8ea6528ba417a268704e77f51e505
Jean Perier [Thu, 21 Mar 2019 15:49:38 +0000 (08:49 -0700)]
[flang] removed hard coded path
Original-commit: flang-compiler/f18@
d2fcd312576c304a52d962bd701e914c09c60d3c
Jean Perier [Thu, 21 Mar 2019 15:33:14 +0000 (08:33 -0700)]
[flang] Fix .NOT. folding bug
Original-commit: flang-compiler/f18@
dd4d9091f15ce3912937b9ceaac7efbbf793d0b5
Tree-same-pre-rewrite: false
Jean Perier [Thu, 21 Mar 2019 15:31:21 +0000 (08:31 -0700)]
[flang] Add test framework for folding
Original-commit: flang-compiler/f18@
d6b658c318ff6e5f61bb1c7490e96394fe7f03a8
Tree-same-pre-rewrite: false
Peter Klausler [Thu, 21 Mar 2019 21:32:06 +0000 (14:32 -0700)]
[flang] Merge pull request flang-compiler/f18#349 from flang-compiler/pmk-bug348
Fix bug#348
Original-commit: flang-compiler/f18@
2a4b38071574ef5fa674226f8eff7e6a51793f30
Reviewed-on: https://github.com/flang-compiler/f18/pull/349
peter klausler [Thu, 21 Mar 2019 20:42:35 +0000 (13:42 -0700)]
[flang] Better error locations
Original-commit: flang-compiler/f18@
9d4a3e973464f1fe581544bdbe10fd31f7e4823b
Reviewed-on: https://github.com/flang-compiler/f18/pull/349
peter klausler [Thu, 21 Mar 2019 17:36:04 +0000 (10:36 -0700)]
[flang] Fix bug#348
Original-commit: flang-compiler/f18@
ba3504b00e4704aa876182677e495c069dd66d49
Reviewed-on: https://github.com/flang-compiler/f18/pull/349
Tree-same-pre-rewrite: false
Peter Klausler [Wed, 20 Mar 2019 22:07:59 +0000 (15:07 -0700)]
[flang] Merge pull request flang-compiler/f18#346 from flang-compiler/pmk-pointers
Simplify indirection.h, remove needless classes
Original-commit: flang-compiler/f18@
72ac1b7ef657d6a83ebd69792a2d448c08597a2c
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
peter klausler [Wed, 20 Mar 2019 21:17:12 +0000 (14:17 -0700)]
[flang] Fix unparsing of defined operators.
Original-commit: flang-compiler/f18@
14aa5198f3154bfd740a62f5c81bd8d24c50e52c
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
peter klausler [Wed, 20 Mar 2019 20:44:00 +0000 (13:44 -0700)]
[flang] get clean compile
Original-commit: flang-compiler/f18@
3a606d804d5a4b237cc4aeab550da4772dbef7f2
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
Tree-same-pre-rewrite: false
peter klausler [Wed, 20 Mar 2019 20:11:49 +0000 (13:11 -0700)]
[flang] checkpoint
Original-commit: flang-compiler/f18@
1e213f3fbe93dbba161c59dde89c9a369a0e3a20
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
Tree-same-pre-rewrite: false
peter klausler [Wed, 20 Mar 2019 18:49:32 +0000 (11:49 -0700)]
[flang] cleanup after extraction and merging
Original-commit: flang-compiler/f18@
6314daadc1a610d1c0e97780ff3d5eba398e7407
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
Tree-same-pre-rewrite: false
peter klausler [Wed, 20 Mar 2019 18:38:45 +0000 (11:38 -0700)]
[flang] Remove OwningPointer, use unique_ptr better instead.
Original-commit: flang-compiler/f18@
89aff868aaec0a9ab6c65e86458a3e23a93da7d1
Reviewed-on: https://github.com/flang-compiler/f18/pull/346
Tree-same-pre-rewrite: false
Steve Scalpone [Wed, 20 Mar 2019 21:12:41 +0000 (14:12 -0700)]
[flang] Merge pull request flang-compiler/f18#344 from flang-compiler/LLVM-dependency
Update the build instructions in README.md.
Original-commit: flang-compiler/f18@
a3c5319e617eac17e03ab79dfa3c496d65489a76
Reviewed-on: https://github.com/flang-compiler/f18/pull/344
Steve Scalpone [Wed, 20 Mar 2019 21:09:35 +0000 (14:09 -0700)]
[flang] Reorder the advice about putting GCC bin and lib on
the PATH and LD_LIBRARY_PATH. Add concrete example.
Original-commit: flang-compiler/f18@
88c34fbe86025cc15d93c2e331a4ceae0d7fe725
Reviewed-on: https://github.com/flang-compiler/f18/pull/344
Steve Scalpone [Wed, 20 Mar 2019 06:47:18 +0000 (23:47 -0700)]
[flang] Update README.md with a list of compilers that are known to
compile f18. Explain how to configure LLVM on the cmake cmd
line. Add more detail about how to compile with clang++.
Original-commit: flang-compiler/f18@
e7f678147bc842188d90beafc77e2c84c614239d
Reviewed-on: https://github.com/flang-compiler/f18/pull/344
Tree-same-pre-rewrite: false
Tim Keith [Tue, 19 Mar 2019 21:46:10 +0000 (14:46 -0700)]
[flang] Merge pull request flang-compiler/f18#343 from flang-compiler/tsk3
Strip whitespace from parse tree source locations
Original-commit: flang-compiler/f18@
eb1e8cd38bc12f7ef2b0a9731d70a6bf798a62df
Reviewed-on: https://github.com/flang-compiler/f18/pull/343
Tim Keith [Tue, 19 Mar 2019 21:18:44 +0000 (14:18 -0700)]
[flang] Address review comments
Original-commit: flang-compiler/f18@
511c9ec536b6a529a5111b2e502c738505faf91b
Reviewed-on: https://github.com/flang-compiler/f18/pull/343
Tim Keith [Tue, 19 Mar 2019 20:44:56 +0000 (13:44 -0700)]
[flang] Fix warning when compiling with clang
Original-commit: flang-compiler/f18@
0f18c3443a76c931c07c08d0b459ed70698ac122
Reviewed-on: https://github.com/flang-compiler/f18/pull/343
Tree-same-pre-rewrite: false
Tim Keith [Tue, 19 Mar 2019 20:38:54 +0000 (13:38 -0700)]
[flang] Strip whitespace from parse tree source locations
Parse tree nodes have `source` fields that map the node back to
a range in the cooked input stream. These are used for names and
to locate error messages.
This change strips spaces from the beginning and end of those
source ranges before they are saved. This fixes two problems:
1. For a statement like this: `generic :: operator(+) => ...`,
the name of the symbol we want to create is "operator(+)" but
the parser was including the following space in the CharBlock
it captured.
2. Error messages referring to parts of expressions sometimes included
extra spaces in the source locations. For example:
```
t.f90:9:29: error: subscripts may be applied only to an object or component
integer, parameter :: b = a(1) + 1
^^^^^
t.f90:4:8: error: operands to LOGICAL operation must be LOGICAL
i = j .or. k
^^^^^^^
```
Original-commit: flang-compiler/f18@
fa14297967b7852fd130790eca4186f259f0a1f2
Reviewed-on: https://github.com/flang-compiler/f18/pull/343
Tree-same-pre-rewrite: false
Peter Klausler [Tue, 19 Mar 2019 19:16:33 +0000 (12:16 -0700)]
[flang] Merge pull request flang-compiler/f18#342 from flang-compiler/pmk-stop
Simplify grammar for STOP/ERROR STOP.
Original-commit: flang-compiler/f18@
6a90817f3c24d648dfbc6fdd7ba1a8d6026e6274
Reviewed-on: https://github.com/flang-compiler/f18/pull/342
peter klausler [Tue, 19 Mar 2019 18:59:58 +0000 (11:59 -0700)]
[flang] Still do scalar- constraint check.
Original-commit: flang-compiler/f18@
e50b4c4b48c0281473670cdf011e335b37d526dc
Reviewed-on: https://github.com/flang-compiler/f18/pull/342
peter klausler [Tue, 19 Mar 2019 18:44:35 +0000 (11:44 -0700)]
[flang] Simplify grammar for STOP/ERROR STOP.
Original-commit: flang-compiler/f18@
eddaea25a2f9be240edad9127aa412fbd2923e4a
Reviewed-on: https://github.com/flang-compiler/f18/pull/342
Tree-same-pre-rewrite: false
Peter Klausler [Tue, 19 Mar 2019 18:14:44 +0000 (11:14 -0700)]
[flang] Merge pull request flang-compiler/f18#341 from flang-compiler/klausler-patch-1
Update FortranForCProgrammers.md
Original-commit: flang-compiler/f18@
678cff1bc70defe5bc074e840c725cb493793f68
Reviewed-on: https://github.com/flang-compiler/f18/pull/341
Peter Klausler [Tue, 19 Mar 2019 17:14:23 +0000 (10:14 -0700)]
[flang] Update FortranForCProgrammers.md
Original-commit: flang-compiler/f18@
39d81438442cc1185409240842084338c2c5d276
Reviewed-on: https://github.com/flang-compiler/f18/pull/341
Tim Keith [Mon, 18 Mar 2019 22:37:17 +0000 (15:37 -0700)]
[flang] Merge pull request flang-compiler/f18#338 from flang-compiler/tsk2
Name resolution for defined operators
Original-commit: flang-compiler/f18@
6b3edf2b713074c33ff2bfb6f748590d247b8cbc
Reviewed-on: https://github.com/flang-compiler/f18/pull/338
Tim Keith [Mon, 18 Mar 2019 18:48:02 +0000 (11:48 -0700)]
[flang] Name resolution for defined operators
Instead of tracking just genericName_ while in a generic interface
block or generic statement, now we immediately create a symbol for it.
A parser::Name isn't good enough because a defined-operator or
defined-io-generic-spec doesn't have a name.
Change the parse tree to add a source field to GenericSpec. Use these
as names for symbols for defined-operator and defined-io-generic-spec
(e.g. "operator(+)" or "read(formatted)").
Change the source for defined-op-name to include the dots so that they
can be distinguished from normal symbols with the same name (e.g. you
can have both ".foo." and "foo"). These symbols have names in the symbol
table like ".foo.", not "operator(.foo.)", because references to them
have that form.
Add GenericKind enum to GenericDetails and GenericBindingDetails.
This allows us to know a symbol is "assignment(=)", for example,
without having to do a string comparison.
Add GenericSpecInfo to handle analyzing the various kinds of
generic-spec and generating symbol names and GenericKind for them.
Add reference to LanguageFeatureControl to SemanticsContext so that
they can be checked during semantics. For this change, if
LogicalAbbreviations is enabled, report an error if the user tries
to define an operator named ".T." or ".F.".
Add resolve-name-utils.cc to hold utility functions and classes that
don't have to be in the ResolveNamesVisitor class hierarchy. The goal
is to reduce the size of resolve-names.cc where possible.
Original-commit: flang-compiler/f18@
3081f694e21dbcaef2554198a682c9af57f2e185
Reviewed-on: https://github.com/flang-compiler/f18/pull/338
Peter Klausler [Mon, 18 Mar 2019 20:46:22 +0000 (13:46 -0700)]
[flang] Merge pull request flang-compiler/f18#339 from flang-compiler/pmk-spaces
Squash free-form white space in prescanner around parentheses.
Original-commit: flang-compiler/f18@
11eb9c89490bfb90abac1b308781580e54f2de46
Reviewed-on: https://github.com/flang-compiler/f18/pull/339
peter klausler [Mon, 18 Mar 2019 20:43:03 +0000 (13:43 -0700)]
[flang] Improve comment
Original-commit: flang-compiler/f18@
140ebe060e31ffcdbcc2d069249fbd0d18c598c5
Reviewed-on: https://github.com/flang-compiler/f18/pull/339
peter klausler [Mon, 18 Mar 2019 20:05:21 +0000 (13:05 -0700)]
[flang] Final tweak before review
Original-commit: flang-compiler/f18@
5dda7b2f658198b21a35edc295a488ebada84244
Reviewed-on: https://github.com/flang-compiler/f18/pull/339
Tree-same-pre-rewrite: false
peter klausler [Mon, 18 Mar 2019 19:24:44 +0000 (12:24 -0700)]
[flang] Simplify
Original-commit: flang-compiler/f18@
42bee00a457e46e77f4ee912a3a5fcd7fb4ae44f
Reviewed-on: https://github.com/flang-compiler/f18/pull/339
Tree-same-pre-rewrite: false
peter klausler [Mon, 18 Mar 2019 19:19:35 +0000 (12:19 -0700)]
[flang] Squash spaces in generic specs.
Original-commit: flang-compiler/f18@
bd5e29f5f807abf58c9169f96ce944e600a02cae
Reviewed-on: https://github.com/flang-compiler/f18/pull/339
Tree-same-pre-rewrite: false
Peter Klausler [Sun, 17 Mar 2019 23:16:19 +0000 (16:16 -0700)]
[flang] Merge pull request flang-compiler/f18#336 from flang-compiler/pmk-fixes
Fix parse of .TRUE._8
Original-commit: flang-compiler/f18@
5e44e67f784dee20067c9ac6ec67080126e57908
Reviewed-on: https://github.com/flang-compiler/f18/pull/336
peter klausler [Sat, 16 Mar 2019 17:04:18 +0000 (10:04 -0700)]
[flang] Fix parse of .TRUE._8
Original-commit: flang-compiler/f18@
b03e7a691d21f84b53a04ed71327720f5500c924
Reviewed-on: https://github.com/flang-compiler/f18/pull/336
Eric Schweitz [Sat, 16 Mar 2019 16:56:33 +0000 (09:56 -0700)]
[flang] Merge pull request flang-compiler/f18#334 from flang-compiler/eas0
FIR sync: replace the stubs for translating terminal symbols to expressions; st…
Original-commit: flang-compiler/f18@
0a93e2c393c67448f7a0494a2fef47612fd664f0
Reviewed-on: https://github.com/flang-compiler/f18/pull/334
Eric [Sat, 16 Mar 2019 01:57:52 +0000 (18:57 -0700)]
[flang] more compiler warnings
Original-commit: flang-compiler/f18@
df8c83c106ee5f8ab7c66f5ad6a87bf8571860bf
Reviewed-on: https://github.com/flang-compiler/f18/pull/334
Eric Schweitz [Fri, 15 Mar 2019 19:50:27 +0000 (12:50 -0700)]
[flang] review comments
Original-commit: flang-compiler/f18@
1ba1c0268f293c3b6652d313e68a87cc118f71e3
Reviewed-on: https://github.com/flang-compiler/f18/pull/334
Tree-same-pre-rewrite: false
Eric Schweitz [Fri, 15 Mar 2019 18:35:18 +0000 (11:35 -0700)]
[flang] muzzle clang++ warnings
Original-commit: flang-compiler/f18@
02decb4040e4e7c57a6404adef17215ce8f276a5
Reviewed-on: https://github.com/flang-compiler/f18/pull/334
Tree-same-pre-rewrite: false
Eric Schweitz [Tue, 12 Mar 2019 14:36:36 +0000 (07:36 -0700)]
[flang] replace the stubs for translating terminal symbols to expressions; start pushing Value type into FIR; cleanup terminator succ_blocks; remove parser element from disassociate; run clang-format; etc.
Original-commit: flang-compiler/f18@
c5561646ea4f72431174f28131a49426b8a03495
Reviewed-on: https://github.com/flang-compiler/f18/pull/334
Tree-same-pre-rewrite: false
Peter Klausler [Fri, 15 Mar 2019 22:59:25 +0000 (15:59 -0700)]
[flang] Merge pull request flang-compiler/f18#335 from flang-compiler/pmk-spec
Some tweaks to preprocess & parse all Fortran in SPEC CPUv6
Original-commit: flang-compiler/f18@
b2828f1318e31917558c28d7ca695234b9ba9b4b
Reviewed-on: https://github.com/flang-compiler/f18/pull/335
peter klausler [Fri, 15 Mar 2019 22:19:27 +0000 (15:19 -0700)]
[flang] Document extension
Original-commit: flang-compiler/f18@
ca2a7dc5a8af1079a832407c23acfbbb3a12c17f
Reviewed-on: https://github.com/flang-compiler/f18/pull/335
peter klausler [Fri, 15 Mar 2019 22:01:54 +0000 (15:01 -0700)]
[flang] Final tweaks, can now parse all SPEC CPUv6
Original-commit: flang-compiler/f18@
015152f1ba44bf938fc581622b89130e73a5c144
Reviewed-on: https://github.com/flang-compiler/f18/pull/335
Tree-same-pre-rewrite: false
peter klausler [Fri, 15 Mar 2019 20:57:41 +0000 (13:57 -0700)]
[flang] more spec work, handle classic C comments
Original-commit: flang-compiler/f18@
d901ee7f500df48c81d786a2f9fcef4c65049d2f
Reviewed-on: https://github.com/flang-compiler/f18/pull/335
Tree-same-pre-rewrite: false
peter klausler [Fri, 15 Mar 2019 17:50:15 +0000 (10:50 -0700)]
[flang] Accomodate missing clock_gettime(); remove f18-parse-demo dependence on lib/evaluate; allow #ifdef with no name
Original-commit: flang-compiler/f18@
330fd8116febab2416afeb8c08d6216c1edd9e55
Reviewed-on: https://github.com/flang-compiler/f18/pull/335
Tree-same-pre-rewrite: false
Peter Klausler [Fri, 15 Mar 2019 00:28:35 +0000 (17:28 -0700)]
[flang] Merge pull request flang-compiler/f18#330 from flang-compiler/pmk-parse-demo
f18-parse-demo
Original-commit: flang-compiler/f18@
ec7b68f596ec61c523717c805885b5662e37e119
Reviewed-on: https://github.com/flang-compiler/f18/pull/330
peter klausler [Thu, 14 Mar 2019 23:40:55 +0000 (16:40 -0700)]
[flang] Add reference to libFortranEvaluate for destructor
Original-commit: flang-compiler/f18@
db6fb0f8cdfc9033b874662b48240ead57efcc74
Reviewed-on: https://github.com/flang-compiler/f18/pull/330
peter klausler [Thu, 14 Mar 2019 23:28:06 +0000 (16:28 -0700)]
[flang] Move dump-parse-tree.h from semantics into parser.
Original-commit: flang-compiler/f18@
9075adfcdf5a300471c9bd5512674ec33a9ad90d
Reviewed-on: https://github.com/flang-compiler/f18/pull/330
Tree-same-pre-rewrite: false
peter klausler [Wed, 13 Mar 2019 23:31:16 +0000 (16:31 -0700)]
[flang] address review comments
Original-commit: flang-compiler/f18@
be7dbdab0a0aab0b13ab020b7b2ffafd0ca63601
Reviewed-on: https://github.com/flang-compiler/f18/pull/330
Tree-same-pre-rewrite: false
peter klausler [Wed, 13 Mar 2019 23:05:05 +0000 (16:05 -0700)]
[flang] f18-parse-demo
Original-commit: flang-compiler/f18@
96d9aefc4f31898e104409d06b0d5d4d97007857
Reviewed-on: https://github.com/flang-compiler/f18/pull/330
Tree-same-pre-rewrite: false
Peter Klausler [Thu, 14 Mar 2019 23:17:30 +0000 (16:17 -0700)]
[flang] Merge pull request flang-compiler/f18#333 from flang-compiler/pmk-include-in-continuation
Fixes and extensions to get WRF to parse
Original-commit: flang-compiler/f18@
338a8578569132d9fa9749617e9b11ada5b729dd
Reviewed-on: https://github.com/flang-compiler/f18/pull/333
peter klausler [Thu, 14 Mar 2019 21:51:40 +0000 (14:51 -0700)]
[flang] Get clean -fparse-only pass over WRF
Original-commit: flang-compiler/f18@
ffe517abc6bdc481248308156dec6d48089e8269
Reviewed-on: https://github.com/flang-compiler/f18/pull/333
peter klausler [Thu, 14 Mar 2019 20:53:35 +0000 (13:53 -0700)]
[flang] WRF preprocessing tweaks
Original-commit: flang-compiler/f18@
53f76e1c93a9df2afb7ce6689f9abee5cef6793c
Reviewed-on: https://github.com/flang-compiler/f18/pull/333
Tree-same-pre-rewrite: false
peter klausler [Thu, 14 Mar 2019 19:19:26 +0000 (12:19 -0700)]
[flang] checkpoint
Original-commit: flang-compiler/f18@
0c9bdc70328e3e6fb752c84c84f5d6cda0b4316d
Reviewed-on: https://github.com/flang-compiler/f18/pull/333
Tree-same-pre-rewrite: false
Eric Schweitz [Thu, 14 Mar 2019 19:26:25 +0000 (12:26 -0700)]
[flang] Merge pull request flang-compiler/f18#332 from flang-compiler/eas1
fix typo
Original-commit: flang-compiler/f18@
4097d8a89088168380b6cf19171bdf6ffbf56056
Reviewed-on: https://github.com/flang-compiler/f18/pull/332
Eric Schweitz [Thu, 14 Mar 2019 19:11:08 +0000 (12:11 -0700)]
[flang] fix typo
Original-commit: flang-compiler/f18@
fc88b92af0952476b2f592b5bfb08e4d4d120ca3
Reviewed-on: https://github.com/flang-compiler/f18/pull/332
Tim Keith [Thu, 14 Mar 2019 17:09:28 +0000 (10:09 -0700)]
[flang] Merge pull request flang-compiler/f18#331 from flang-compiler/tsk10
Change default for LINK_WITH_FIR to ON.
Original-commit: flang-compiler/f18@
ea8944908956f73fb123b6cf4053753b98f28427
Reviewed-on: https://github.com/flang-compiler/f18/pull/331
Tim Keith [Thu, 14 Mar 2019 16:08:27 +0000 (09:08 -0700)]
[flang] Change default for LINK_WITH_FIR to ON.
Original-commit: flang-compiler/f18@
b13f99446339666859eb00e896e8d1751423892a
Reviewed-on: https://github.com/flang-compiler/f18/pull/331
Tim Keith [Thu, 14 Mar 2019 14:23:03 +0000 (07:23 -0700)]
[flang] Merge pull request flang-compiler/f18#329 from flang-compiler/tsk10
Add cmake option to link with FIR and LLVM
Original-commit: flang-compiler/f18@
ddb43b33ccf52e9083a90d11f00b6a85667617ed
Reviewed-on: https://github.com/flang-compiler/f18/pull/329
Tim Keith [Wed, 13 Mar 2019 19:41:15 +0000 (12:41 -0700)]
[flang] Add cmake option to link with FIR and LLVM
The cmake option -DLINK_WITH_FIR=ON causes the f18 driver to be linked
against FIR and LLVM. When it is set to OFF (the default), the call into
FIR is #ifdef'd out.
The source in lib/FIR is always built; this option only affects linking.
Original-commit: flang-compiler/f18@
69569edd4c6abbb7a66c0d8f3595858693a06996
Reviewed-on: https://github.com/flang-compiler/f18/pull/329
Eric Schweitz [Tue, 12 Mar 2019 14:36:01 +0000 (07:36 -0700)]
[flang] Merge pull request flang-compiler/f18#328 from flang-compiler/eas0
remove unused files and clean up unused warnings
Original-commit: flang-compiler/f18@
67ef747557f254d3fb3692bd7eba720a29ad69df
Reviewed-on: https://github.com/flang-compiler/f18/pull/328
Eric Schweitz [Tue, 12 Mar 2019 01:37:30 +0000 (18:37 -0700)]
[flang] Move virtual dtor to Terminator
Original-commit: flang-compiler/f18@
68853d602a6a2c21f4f19b91b58fec1f88473dd6
Reviewed-on: https://github.com/flang-compiler/f18/pull/328
Eric Schweitz [Mon, 11 Mar 2019 16:50:28 +0000 (09:50 -0700)]
[flang] remove unused files
Cleanup some warnings when building with clang.
Original-commit: flang-compiler/f18@
33cf6255d1431a8fa0a30fb4b883615de17bcbb7
Reviewed-on: https://github.com/flang-compiler/f18/pull/328
Tree-same-pre-rewrite: false
jeanPerier [Tue, 12 Mar 2019 08:27:00 +0000 (01:27 -0700)]
[flang] Silence clang warning related to ISO_Fortran_binding.h usage in C++
Original-commit: flang-compiler/f18@
85b7f370b4b1e41186bc2cfb7cf55d279085b1d5
Jean Perier [Mon, 11 Mar 2019 18:33:54 +0000 (11:33 -0700)]
[flang] address comments
Original-commit: flang-compiler/f18@
7b1fc24265b694ed365879e974810744911f12a2
Jean Perier [Mon, 11 Mar 2019 17:34:35 +0000 (10:34 -0700)]
[flang] remove unused CFI_ISO_FORTRAN_BINDING_FLEXIBLE_ARRAY
Original-commit: flang-compiler/f18@
3cf9a625bf6b7c2a62b29074f31a564cc51e5df0
Tree-same-pre-rewrite: false
Jean Perier [Mon, 11 Mar 2019 17:21:16 +0000 (10:21 -0700)]
[flang] Silence clang warning from ISO_Fortran_binding.h usage in C++
Original-commit: flang-compiler/f18@
88eb833b14e3f91285605dd4db0e0c021df7fa4c
Tree-same-pre-rewrite: false
Steve Scalpone [Tue, 12 Mar 2019 03:23:18 +0000 (20:23 -0700)]
[flang] Merge pull request flang-compiler/f18#326 from flang-compiler/BUILD_WITH_CLANG_LIBRARIES
Update CMakeList.txt to allow linking with LLVM libc++
Original-commit: flang-compiler/f18@
866e188de60e5811882c4c1ea75daa2b448b7b0b
Reviewed-on: https://github.com/flang-compiler/f18/pull/326
Steve Scalpone [Mon, 11 Mar 2019 17:49:46 +0000 (10:49 -0700)]
[flang] To use LLVM's libc++ instead of GCC's libstdc++, define
BUILD_WITH_CLANG_LIBRARIES on the cmake command line to
be the path to a clang installation with bin, lib, etc.
For this to work, BUILD_WITH_CLANG must be defined too.
Original-commit: flang-compiler/f18@
a36d5fee421f2e90293540335c5b887412e31383
Reviewed-on: https://github.com/flang-compiler/f18/pull/326
Peter Klausler [Mon, 11 Mar 2019 22:38:28 +0000 (15:38 -0700)]
[flang] Merge pull request flang-compiler/f18#327 from flang-compiler/pmk-nofir
Emergency temporary patch to fix build
Original-commit: flang-compiler/f18@
06d71f72a5c97ac7be5cde0150cc6738772ba94a
Reviewed-on: https://github.com/flang-compiler/f18/pull/327
peter klausler [Mon, 11 Mar 2019 22:01:27 +0000 (15:01 -0700)]
[flang] Temporarily disconnect FIR from f18.cc build
Original-commit: flang-compiler/f18@
c610bc2744ad56adae8de09a81069a2c3df396e7
Reviewed-on: https://github.com/flang-compiler/f18/pull/327
Eric Schweitz [Mon, 11 Mar 2019 18:02:32 +0000 (11:02 -0700)]
[flang] Merge pull request flang-compiler/f18#324 from flang-compiler/eas0
Revisions for review comments.
Original-commit: flang-compiler/f18@
5b066774b0c03a45dff94d2ccdf071a7690aabe5
Reviewed-on: https://github.com/flang-compiler/f18/pull/324
Eric Schweitz [Mon, 11 Mar 2019 16:36:37 +0000 (09:36 -0700)]
[flang] Revisions for review comments.
Original-commit: flang-compiler/f18@
1a03f7d5bbf6b0f74a54736a906ea4a1e301f0e9
Reviewed-on: https://github.com/flang-compiler/f18/pull/324
Eric Schweitz [Mon, 11 Mar 2019 16:37:31 +0000 (09:37 -0700)]
[flang] Merge pull request flang-compiler/f18#323 from flang-compiler/eas0
Fix build breakage
Original-commit: flang-compiler/f18@
46e416acc7d318d7681e17f4e10812b4ad6f626b
Reviewed-on: https://github.com/flang-compiler/f18/pull/323
Eric Schweitz [Mon, 11 Mar 2019 16:16:01 +0000 (09:16 -0700)]
[flang] Fix build breakage
Original-commit: flang-compiler/f18@
72d003f89d523f84cfab6ed048897be6bcb7ed92
Reviewed-on: https://github.com/flang-compiler/f18/pull/323
Eric Schweitz [Mon, 11 Mar 2019 16:01:14 +0000 (09:01 -0700)]
[flang] Merge pull request flang-compiler/f18#319 from flang-compiler/eas0
FIR update
Original-commit: flang-compiler/f18@
3f6f710889c68207573ea9eddc962270590a2669
Reviewed-on: https://github.com/flang-compiler/f18/pull/319
Eric Schweitz [Fri, 8 Mar 2019 16:26:37 +0000 (08:26 -0800)]
[flang] Address review comments; merge with latest breaking changes on master
Original-commit: flang-compiler/f18@
ffde96d4866c25c3267332963363d4b6c523325d
Reviewed-on: https://github.com/flang-compiler/f18/pull/319