What string data-structures/algorithms do popular compilers use?

Since compilers mostly deal with strings/text, I guess, they rely on efficient string data-structures/algorithms to get compilation done faster. What kind of string data-structures/algorithms do popular compilers like gcc/g++/llvm rely on? Any references would be highly appreciated.