Author: Valentin Clement (バレンタイン クレメン) Date: 2024-09-04T21:15:23-07:00 New Revision: 77500cdd0c7894cddbf89210597982c4e06a5331
URL: https://github.com/llvm/llvm-project/commit/77500cdd0c7894cddbf89210597982c4e06a5331 DIFF: https://github.com/llvm/llvm-project/commit/77500cdd0c7894cddbf89210597982c4e06a5331.diff LOG: Revert "[flang][cuda] Add c_devptr and bypass output semantic check (#107318)" This reverts commit c2fc33204caca8c52b27425255bbc78c9e4d99e4. Added: Modified: flang/lib/Semantics/check-io.cpp flang/module/__fortran_builtins.f90 Removed: flang/test/Lower/CUDA/cuda-devptr.cuf ################################################################################ diff --git a/flang/lib/Semantics/check-io.cpp b/flang/lib/Semantics/check-io.cpp index d7d2f0fa322cbb..54e8e09cbf7e48 100644 --- a/flang/lib/Semantics/check-io.cpp +++ b/flang/lib/Semantics/check-io.cpp @@ -1171,11 +1171,6 @@ parser::Message *IoChecker::CheckForBadIoType(const evaluate::DynamicType &type, "Derived type '%s' in I/O may not be polymorphic unless using defined I/O"_err_en_US, derived.name()); } - if (IsBuiltinDerivedType(&derived, "c_ptr") || - IsBuiltinDerivedType(&derived, "c_devptr")) { - // Bypass the check below for c_ptr and c_devptr. - return nullptr; - } if (const Symbol * bad{FindInaccessibleComponent(which, derived, scope)}) { return &context_.Say(where, diff --git a/flang/module/__fortran_builtins.f90 b/flang/module/__fortran_builtins.f90 index a9d3ac897eb583..44b0f17339cd96 100644 --- a/flang/module/__fortran_builtins.f90 +++ b/flang/module/__fortran_builtins.f90 @@ -102,10 +102,6 @@ __builtin_threadIdx, __builtin_blockDim, __builtin_blockIdx, & __builtin_gridDim integer, parameter, public :: __builtin_warpsize = 32 - - type, public, bind(c) :: __builtin_c_devptr - type(__builtin_c_ptr) :: cptr - end type intrinsic :: __builtin_fma intrinsic :: __builtin_ieee_is_nan, __builtin_ieee_is_negative, & diff --git a/flang/test/Lower/CUDA/cuda-devptr.cuf b/flang/test/Lower/CUDA/cuda-devptr.cuf deleted file mode 100644 index 4e11e3c0fc8f85..00000000000000 --- a/flang/test/Lower/CUDA/cuda-devptr.cuf +++ /dev/null @@ -1,16 +0,0 @@ -! RUN: bbc -emit-hlfir -fcuda %s -o - | FileCheck %s - -! Test CUDA Fortran specific type - -subroutine sub1() - use iso_c_binding - use __fortran_builtins, only : c_devptr => __builtin_c_devptr - - type(c_ptr) :: ptr - type(c_devptr) :: dptr - print*,ptr - print*,dptr -end - -! CHECK-LABEL: func.func @_QPsub1() -! CHECK-COUNT-2: %{{.*}} = fir.call @_FortranAioOutputDerivedType _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits