[PATCH] D129107: [BOLT][HUGIFY] adds huge pages support of PIE/no-PIE binaries

Rafael Auler via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 4 12:52:54 PDT 2022


rafauler added a comment.

In D129107#3908991 <https://reviews.llvm.org/D129107#3908991>, @phosek wrote:

> This is failing on our builders with the following error:
>
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:142:3: error: unknown type name 'uint8_t'
>     uint8_t *HotStart = (uint8_t *)&__hot_start;
>     ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:142:24: error: use of undeclared identifier 'uint8_t'
>     uint8_t *HotStart = (uint8_t *)&__hot_start;
>                          ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:142:33: error: expected expression
>     uint8_t *HotStart = (uint8_t *)&__hot_start;
>                                   ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:142:35: error: use of undeclared identifier '__hot_start'
>     uint8_t *HotStart = (uint8_t *)&__hot_start;
>                                     ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:143:3: error: unknown type name 'uint8_t'
>     uint8_t *HotEnd = (uint8_t *)&__hot_end;
>     ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:143:22: error: use of undeclared identifier 'uint8_t'
>     uint8_t *HotEnd = (uint8_t *)&__hot_end;
>                        ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:143:31: error: expected expression
>     uint8_t *HotEnd = (uint8_t *)&__hot_end;
>                                 ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:143:33: error: use of undeclared identifier '__hot_end'
>     uint8_t *HotEnd = (uint8_t *)&__hot_end;
>                                   ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:145:9: error: unknown type name 'size_t'
>     const size_t HugePageBytes = 2L * 1024 * 1024;
>           ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:146:3: error: unknown type name 'uint8_t'
>     uint8_t *From = HotStart - ((intptr_t)HotStart & (HugePageBytes - 1));
>     ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:146:32: error: use of undeclared identifier 'intptr_t'
>     uint8_t *From = HotStart - ((intptr_t)HotStart & (HugePageBytes - 1));
>                                  ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:147:3: error: unknown type name 'uint8_t'
>     uint8_t *To = HotEnd + (HugePageBytes - 1);
>     ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:148:10: error: use of undeclared identifier 'intptr_t'
>     To -= (intptr_t)To & (HugePageBytes - 1);
>            ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:150:47: error: use of undeclared identifier 'uint64_t'
>     DEBUG(reportNumber("[hugify] hot start: ", (uint64_t)HotStart, 16);)
>                                                 ^
>   /opt/s/w/ir/x/w/llvm-llvm-project/bolt/runtime/hugify.cpp:172:24: error: expected string literal in 'asm'
>     __asm__ __volatile__(SAVE_ALL "call __bolt_hugify_self_impl\n" RESTORE_ALL
>                          ^
>   15 errors generated.
>
> Looks like `hugify.cpp` is missing `cstdint` include? Would it be possible to take a look?

I can't repro. It's probably these wonderful/unreadable ifdefs we have here, because we do include cstdint in common.h. What is the system your builder is running?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D129107/new/

https://reviews.llvm.org/D129107



More information about the llvm-commits mailing list