diff options
author | 2024-01-05 16:30:57 +0000 | |
---|---|---|
committer | 2024-09-25 18:50:21 +0000 | |
commit | 9f3192455f075aea6538fa191b106f21ad6b789f (patch) | |
tree | da4ced0a7a5c09cc758b64b6be4bc649eb01faa4 /build/codegen.go | |
parent | bb2fb09b7d4618e4e4319835e1a8e3c1eb1506ae (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