diff options
| author | Samuel Holland <samuel.holland@sifive.com> | 2024-11-11 14:02:45 -0800 |
|---|---|---|
| committer | Anup Patel <anup@brainfault.org> | 2024-11-28 17:09:17 +0530 |
| commit | df1c1000014049d95d65de831f9015a2dcf9fa34 (patch) | |
| tree | 09ada6ab220ee86c1169a85777c32f2f2a6a1c47 /scripts | |
| parent | 23ef9c5f00b81cffbbf7ff6894f241fad07ee4b7 (diff) | |
| download | opensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.tar.gz opensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.tar.bz2 opensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.zip | |
treewide: Make carray arrays const and NULL-terminated
This allows the compiler to generate significantly better code, because
it does not have to maintain either the loop counter or loop limit. Plus
there are half as many symbols to relocate. This also simplifies passing
carray arrays to helper functions.
Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/carray.sh | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/scripts/carray.sh b/scripts/carray.sh index 1fa2366a..72808697 100755 --- a/scripts/carray.sh +++ b/scripts/carray.sh @@ -69,10 +69,9 @@ for VAR in ${VAR_LIST}; do done printf "\n" -printf "%s *%s[] = {\n" "${TYPE_NAME}" "${ARRAY_NAME}" +printf "%s *const %s[] = {\n" "${TYPE_NAME}" "${ARRAY_NAME}" for VAR in ${VAR_LIST}; do printf "\t&%s,\n" "${VAR}" done -printf "};\n\n" - -printf "unsigned long %s_size = sizeof(%s) / sizeof(%s *);\n" "${ARRAY_NAME}" "${ARRAY_NAME}" "${TYPE_NAME}" + printf "\tNULL\n" +printf "};\n" |
