Permalink
Browse files

Merge pull request #628 from ThePortlandGroup/nv_stage

Pull 2018-11-30T10-56 Recent NVIDIA Changes
  • Loading branch information...
sscalpone committed Nov 30, 2018
2 parents 62fe54a + ea6a207 commit 257bdee747089b3ddd105ed301c88867329b0519
Showing with 1,168 additions and 167 deletions.
  1. +24 −0 test/f90_correct/inc/fs24800.mk
  2. +24 −0 test/f90_correct/inc/fs25964.mk
  3. +23 −0 test/f90_correct/inc/fs26000_a.mk
  4. +23 −0 test/f90_correct/inc/fs26000_b.mk
  5. +23 −0 test/f90_correct/inc/fs26000_c.mk
  6. +23 −0 test/f90_correct/inc/fs26000_d.mk
  7. +23 −0 test/f90_correct/inc/fs26000_e.mk
  8. +19 −0 test/f90_correct/lit/fs24800.sh
  9. +19 −0 test/f90_correct/lit/fs25964.sh
  10. +19 −0 test/f90_correct/lit/fs26000_a.sh
  11. +19 −0 test/f90_correct/lit/fs26000_b.sh
  12. +19 −0 test/f90_correct/lit/fs26000_c.sh
  13. +19 −0 test/f90_correct/lit/fs26000_d.sh
  14. +19 −0 test/f90_correct/lit/fs26000_e.sh
  15. +8 −0 test/f90_correct/src/fs24800.f90
  16. +20 −0 test/f90_correct/src/fs25964.f90
  17. +19 −0 test/f90_correct/src/fs26000_a.f90
  18. +37 −0 test/f90_correct/src/fs26000_b.f90
  19. +36 −0 test/f90_correct/src/fs26000_c.f90
  20. +36 −0 test/f90_correct/src/fs26000_d.f90
  21. +37 −0 test/f90_correct/src/fs26000_e.f90
  22. +2 −2 test/lit.cfg
  23. +29 −0 test/mp_correct/inc/fs21390.mk
  24. +22 −0 test/mp_correct/inc/fs25864.mk
  25. +29 −0 test/mp_correct/inc/fs26045.mk
  26. +19 −0 test/mp_correct/lit/fs21390.sh
  27. +19 −0 test/mp_correct/lit/fs25864.sh
  28. +19 −0 test/mp_correct/lit/fs26045.sh
  29. +1 −0 test/mp_correct/makefile
  30. +40 −0 test/mp_correct/src/src/fs21390.f90
  31. +11 −0 test/mp_correct/src/src/fs25864.f90
  32. +33 −0 test/mp_correct/src/src/fs26045.f90
  33. +30 −0 test/tools/ngrep.sh
  34. +6 −0 tools/flang1/flang1exe/ast.c
  35. +8 −12 tools/flang1/flang1exe/lowerilm.c
  36. +21 −1 tools/flang1/flang1exe/semant.c
  37. +2 −0 tools/flang1/flang1exe/semant.h
  38. +20 −4 tools/flang1/flang1exe/semant3.c
  39. +40 −17 tools/flang1/flang1exe/semutil.c
  40. +15 −2 tools/flang1/flang1exe/transfrm.c
  41. +14 −15 tools/flang1/utils/ast/ast.in.h
  42. +2 −0 tools/flang2/docs/xflag.n
  43. +2 −1 tools/flang2/flang2exe/bih.h
  44. +1 −1 tools/flang2/flang2exe/cgmain.cpp
  45. +2 −0 tools/flang2/flang2exe/exp_ftn.cpp
  46. +2 −0 tools/flang2/flang2exe/iltutil.cpp
  47. +165 −92 tools/flang2/flang2exe/llassem.cpp
  48. +33 −10 tools/flang2/flang2exe/mwd.cpp
  49. +78 −4 tools/flang2/flang2exe/upper.cpp
  50. +14 −6 tools/flang2/utils/symtab/symtab.n
@@ -0,0 +1,24 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) -c $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90
run: ; # compilation-only test
verify:
@echo PASS
@@ -0,0 +1,24 @@
# Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) -c $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: ; # compilation-only test
verify:
@echo PASS
@@ -0,0 +1,23 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: $(TEST).$(EXESUFFIX)
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)
verify:
@@ -0,0 +1,23 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: $(TEST).$(EXESUFFIX)
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)
verify:
@@ -0,0 +1,23 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: $(TEST).$(EXESUFFIX)
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)
verify:
@@ -0,0 +1,23 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: $(TEST).$(EXESUFFIX)
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)
verify:
@@ -0,0 +1,23 @@
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
build:
@echo ------------------------------------ building test $(TEST)
$(FC) $(FFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(EXESUFFIX)
run: $(TEST).$(EXESUFFIX)
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)
verify:
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,19 @@
#
# Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Shared lit script for each tests. Run bash commands that run tests with make.
# RUN: KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%s MAKE_FILE_DIR=%S/.. bash %S/runmake | tee %t
# RUN: cat %t | FileCheck %S/runmake
@@ -0,0 +1,8 @@
! Test contributed by Neil Carlson from Los Alamos National Laboratory
! related to Flang github issue #243
type foo
class(*), allocatable :: val
end type
type(foo) :: x
x = foo(42)
end
@@ -0,0 +1,20 @@
! Test contributed by Neil Carlson from Los Alamos National Laboratory
! Related to github issue #240
module map_type
type :: item
type(item), pointer :: next => null(), prev => null()
contains
final :: item_delete
end type
type :: map
type(item), pointer :: first => null()
end type
type :: parameter_list
type(map) :: params = map() ! flag rejects this valid empty constructor
end type
contains
subroutine item_delete(this)
type(item), intent(inout) :: this
end subroutine
end module
@@ -0,0 +1,19 @@
! Test contributed by Neil Carlson from Los Alamos National Laboratory
! related to Flang github issue #243
type foo
class(*), allocatable :: val
end type
type(foo) :: x
x = foo(42)
select type (val => x%val)
type is (integer)
if (val /= 42) then
print *, "FAIL 1"
else
print *, "PASS"
end if
class default
print *, "FAIL 2"
end select
end
@@ -0,0 +1,37 @@
! Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved.
!
! Licensed under the Apache License, Version 2.0 (the "License");
! you may not use this file except in compliance with the License.
! You may obtain a copy of the License at
!
! http://www.apache.org/licenses/LICENSE-2.0
!
! Unless required by applicable law or agreed to in writing, software
! distributed under the License is distributed on an "AS IS" BASIS,
! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
! See the License for the specific language governing permissions and
! limitations under the License.
! Variation from fs26000_a (integer case)
! This is real case.
! Related to a test by Neil Carlson from Los Alamos National Laboratory
! related to Flang github issue #243
type foo
class(*), allocatable :: val
end type
type(foo) :: x
x = foo(42.5)
select type (val => x%val)
type is (real)
if (val /= 42.5) then
print *, "FAIL 1"
else
print *, "PASS"
endif
class default
print *, "FAIL 2"
end select
end
Oops, something went wrong.

0 comments on commit 257bdee

Please sign in to comment.