summaryrefslogtreecommitdiff
path: root/build/codegen.go
diff options
context:
space:
mode:
author Chris Jones <christopher.jones@arm.com> 2024-01-05 16:30:57 +0000
committer Ulya Trofimovich <skvadrik@google.com> 2024-09-25 18:50:21 +0000
commit9f3192455f075aea6538fa191b106f21ad6b789f (patch)
treeda4ced0a7a5c09cc758b64b6be4bc649eb01faa4 /build/codegen.go
parentbb2fb09b7d4618e4e4319835e1a8e3c1eb1506ae (diff)
Refactor C++ entrypoints
Refactor all C++ entrypoint function (those that can be called from assembly entrypoints) declarations into a new header file. Now all C++ entrypoint functions have a single declaration, inside a header that can be included as needed. This removes the need for additional declarations to be made which, if not type checked, could be mismatched with the function definition. A macro is used to declare each entrypoint inside the header but also allows operations to be done on all C++ entrypoints similar to assembly entrypoints with its macro in quick_entrypoints_list.h. Note: linkers, unlike compilers, do not typically type check function declarations against defintions, e.g: when linking between two libraries. This can cause mismatches which are not caught when building and therefore become difficult to debug later. This patch aims to unify all C++ entrypoint function declarations, i.e: those C++ functions called from assembly entrypoints. By doing this any unnecessary and potentially conflicting declarations can be removed to ensure a single source of truth. Author: Chris Jones <christopher.jones@arm.com> Test: test.py --host --target Change-Id: I5b0de39eed96f666e7bb4205906c5d9369615aa8
Diffstat (limited to 'build/codegen.go')
0 files changed, 0 insertions, 0 deletions