aboutsummaryrefslogtreecommitdiff
path: root/contrib/gcc_update
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2022-08-30 16:33:51 +0200
committerUlrich Drepper <drepper@gmail.com>2022-08-30 16:33:51 +0200
commit0c92f895e0b92b8057b84f8584873258760d227b (patch)
treef08fb4ccea13c9a7a1dd80c0957c7ff4226da3cc /contrib/gcc_update
parent1ddf31af2f3fbfba45882a95dd6eb81bae59f90a (diff)
downloadgcc-0c92f895e0b92b8057b84f8584873258760d227b.zip
gcc-0c92f895e0b92b8057b84f8584873258760d227b.tar.gz
gcc-0c92f895e0b92b8057b84f8584873258760d227b.tar.bz2
Change get_std_name_hint to use generated hash table
The get_std_name_hint function so far uses linear search to locate matching entries. After adding more hint entries this might not be appropriate anymore. Therefore this patch also replaces the linear array with a gperf-generated hash table. contrib/ChangeLog * gcc_update (files_and_dependencies): Add rule for gcc/cp/std-name-hint.h. gcc/cp/ChangeLog * Make-lang.in: Add rule to rebuild std-name-hint.h from std-name-hint.gperf. * name-lookup.cc (get_std_name_hint): Remove hints array. Use gperf-generated class std_name_hint_lookup. Include "std-name-hint.h". * std-name-hint.gperf: New file. * std-name-hint.h: New file. Generated from the .gperf file.
Diffstat (limited to 'contrib/gcc_update')
-rwxr-xr-xcontrib/gcc_update1
1 files changed, 1 insertions, 0 deletions
diff --git a/contrib/gcc_update b/contrib/gcc_update
index 2ee1bc1..dd8b6d0 100755
--- a/contrib/gcc_update
+++ b/contrib/gcc_update
@@ -94,6 +94,7 @@ gcc/config/rs6000/rs6000-tables.opt: gcc/config/rs6000/rs6000-cpus.def gcc/confi
gcc/config/rs6000/fusion.md: gcc/config/rs6000/genfusion.pl
# And then, language-specific files
gcc/cp/cfns.h: gcc/cp/cfns.gperf
+gcc/cp/std-name-hint.h: gcc/cp/std-name-hint.gperf
# testsuite
# Without this, _Pragma3.c can have a false negative.
gcc/testsuite/gcc.dg/cpp/_Pragma3.c: gcc/testsuite/gcc.dg/cpp/mi1c.h