aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.cc
diff options
context:
space:
mode:
authorSteve Baird <baird@adacore.com>2022-10-04 14:42:56 -0700
committerMarc Poulhiès <poulhies@adacore.com>2022-11-04 14:47:22 +0100
commit8080a1b64ae6030bb85ce88486dc2447d3063b09 (patch)
treede7e873f6142c7f7409a71a45eee21f87592d41d /gcc/expr.cc
parent164cc7a501cfc3239f2146443c1ba486e773349c (diff)
downloadgcc-8080a1b64ae6030bb85ce88486dc2447d3063b09.zip
gcc-8080a1b64ae6030bb85ce88486dc2447d3063b09.tar.gz
gcc-8080a1b64ae6030bb85ce88486dc2447d3063b09.tar.bz2
ada: Generate host-side CUDA_Register_Function calls for device's adainit/adafinal
To invoke a device-side subprogram from the host (via a CUDA_execute pragma), the subprogram also has to be registered by calling CUDA_Register_Function. The host-side adainit and adafinal procedures need to invoke the corresponding device-side procedures, so corresponding CUDA_Register_Function calls need to be generated. gcc/ada/ * bindgen.adb (Gen_CUDA_Init): Move existing loop body into a new local procedure, Gen_CUDA_Register_Function_Call, and replace that loop body with a call to this procedure. This first part is just semantics-preserving refactoring. The second part is to add Gen_CUDA_Register_Function_Call calls after the loop for the device-side adainit and adafinal procedures.
Diffstat (limited to 'gcc/expr.cc')
0 files changed, 0 insertions, 0 deletions