-
Notifications
You must be signed in to change notification settings - Fork 14.7k
Open
Labels
Description
Found as part of rust-lang/rust#103812.
When creating a very large constant blob, a large proportion of compile time is spent hashing the string with djbHash
to insert it into CDSConstants
llvm-project/llvm/lib/IR/Constants.cpp
Lines 2877 to 2880 in 244331a
auto &Slot = | |
*Ty->getContext() | |
.pImpl->CDSConstants.insert(std::make_pair(Elements, nullptr)) | |
.first; |
@alloc = private unnamed_addr constant <{ [104857600 x i8] }> <{ [104857600 x i8] c"... VERY LONG DATA ..." }>, align 1
cc @pcwalton
adi-g15 and Kobzol