[all-commits] [llvm/llvm-project] 442f2d: [ORC-RT] Add OrcRTCWrapperFunctionResult.

lhames via All-commits all-commits at lists.llvm.org
Sun May 30 11:44:56 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 442f2d7bc0bc4f19ce056018231fbed9166c9b08
      https://github.com/llvm/llvm-project/commit/442f2d7bc0bc4f19ce056018231fbed9166c9b08
  Author: Lang Hames <lhames at gmail.com>
  Date:   2021-05-30 (Sun, 30 May 2021)

  Changed paths:
    M compiler-rt/lib/orc/CMakeLists.txt
    A compiler-rt/lib/orc/c_api.h
    M compiler-rt/lib/orc/unittests/CMakeLists.txt
    A compiler-rt/lib/orc/unittests/c_api_test.cpp

  Log Message:
  -----------
  [ORC-RT] Add OrcRTCWrapperFunctionResult.

OrcRTCWrapperFunctionResult is a C struct that can be used to return serialized
results from "wrapper functions" -- functions that deserialize an argument
buffer, call through to an actual implementation function, then serialize and
return the result of that function. Wrapper functions allow calls between ORC
and the ORC Runtime to be written using a single signature,
WrapperFunctionResult(const char *ArgData, size_t ArgSize), and without coupling
either side to a particular transport mechanism (in-memory, TCP, IPC, ... the
actual mechanism will be determined by the TargetProcessControl implementation).

OrcRTCWrapperFunctionResult is designed to allow small serialized buffers to
be returned by value, with larger serialized results stored on the heap. They
also provide an error state to report failures in serialization/deserialization.


  Commit: 1ed29f8784ee528f54cd33300ab8420372141283
      https://github.com/llvm/llvm-project/commit/1ed29f8784ee528f54cd33300ab8420372141283
  Author: Lang Hames <lhames at gmail.com>
  Date:   2021-05-30 (Sun, 30 May 2021)

  Changed paths:
    M compiler-rt/lib/orc/CMakeLists.txt
    A compiler-rt/lib/orc/common.h

  Log Message:
  -----------
  [ORC-RT] Add common.h -- Logging, casting and remote dispatch utilities.


Compare: https://github.com/llvm/llvm-project/compare/2176be556b44...1ed29f8784ee


More information about the All-commits mailing list