Function Call Control Flow

Save a return address and transfer control to a called function.

Vendor-Neutral Definition

saved_return_address = PC + instruction_width; PC = target.
⚠️ Cross-vendor mappings describe semantic relationships and are not guaranteed one-to-one compiler translations.
equivalent with restrictions Both save a return address and transfer control to a called function.
Property NVIDIA PTX AMDGPU
Instruction call s_call_i64, s_swappc_b64
ISA Layer Virtual Native
Data Types - b64, i64
Version / Target Introduced PTX ISA 1.0 gfx1100, gfx1100

Important Differences

  • PTX's call additionally handles marshaling explicit parameter/return-value lists per its ABI; AMDGPU's call instructions only handle the control-transfer/return-address part - argument passing is the caller/callee's own responsibility via registers or memory, not part of the instruction itself.

Source Evidence

Verification method: documentation