Lines Matching full:hash

1 ## Here we test the --elf-hash-histogram command line option.
3 ## This test case checks how we built histograms for hash sections.
6 # RUN: llvm-readelf --elf-hash-histogram %t1-32.o | FileCheck %s --check-prefix=HIST
13 # RUN: llvm-readelf --elf-hash-histogram %t1-64.o | FileCheck %s --check-prefix=HIST
16 # RUN: llvm-readobj --elf-hash-histogram %t1-32.o | FileCheck %s --check-prefix=LLVM-HIST
17 # RUN: llvm-readobj --elf-hash-histogram %t1-64.o | FileCheck %s --check-prefix=LLVM-HIST
25 # HIST-NEXT: Histogram for `.gnu.hash' bucket list length (total of 3 buckets)
98 - Name: .hash
103 - Name: .gnu.hash
119 ## sizeof(.hash) == 0x28.
130 FirstSec: .hash
133 ## Show that we report a warning for a hash table which contains an entry of
137 # RUN: llvm-readelf --elf-hash-histogram 2>&1 %t2.o | \
140 # BROKEN: warning: '[[FILE]]': .hash section is invalid: bucket 1: a cycle was detected in th…
152 - Name: .hash
161 ## llvm-readelf will read the hash table from the file offset
163 ## which is the start of PT_LOAD, i.e. the file offset of .hash.
172 FirstSec: .hash
179 # RUN: llvm-readelf --elf-hash-histogram %t3.o 2>&1 | FileCheck %s --check-prefix=ERR1 -DFILE=%t3.o
181 # ERR1: warning: '[[FILE]]': the hash table at offset 0x2b1 goes past the end of the file (0x2b8){{…
189 - Name: .hash
206 FirstSec: .hash
209 ## Check we report a warning when the hash table goes past the end of the file.
211 ## Case A.1: the hash table ends right before the EOF. We have a broken nbucket
214 # RUN: llvm-readelf --elf-hash-histogram %t4.1.o 2>&1 | \
217 ## Case A.2: the hash table ends 1 byte past the EOF. We have a broken nbucket
220 # RUN: llvm-readelf --elf-hash-histogram %t4.2.o 2>&1 | \
222 # ERR2: warning: '[[FILE]]': the hash table at offset 0x54 goes past the end of the file (0x1d4), n…
224 ## Case B.1: the hash table ends right before the EOF. We have a broken nchain
227 # RUN: llvm-readelf --elf-hash-histogram %t4.3.o 2>&1 | \
229 # ERR3: warning: '[[FILE]]': hash table nchain (93) differs from symbol count derived from SHT_DYNS…
230 …': the size (0x5d0) of the dynamic symbol table at 0x78, derived from the hash table, goes past th…
232 ## Case B.2: the hash table ends 1 byte past the EOF. We have a broken nchain
235 # RUN: llvm-readelf --elf-hash-histogram %t4.4.o 2>&1 | \
237 # ERR4: warning: '[[FILE]]': hash table nchain (94) differs from symbol count derived from SHT_DYNS…
238 …': the size (0x5e0) of the dynamic symbol table at 0x78, derived from the hash table, goes past th…
239 # ERR4: warning: '[[FILE]]': the hash table at offset 0x54 goes past the end of the file (0x1d4), n…
247 - Name: .hash
265 FirstSec: .hash
268 ## Check we dump a histogram for the .gnu.hash table even when the .hash table is skipped.
270 ## Case A: the .hash table has no data to build histogram and it is skipped.
272 # RUN: llvm-readelf --elf-hash-histogram %t5.o 2>&1 | \
273 # RUN: FileCheck %s --check-prefix=GNU-HASH --implicit-check-not="Histogram"
275 ## Case B: the .hash table has a broken nbucket field. We report a warning
276 ## and skip dumping of the .hash table.
278 # RUN: llvm-readelf --elf-hash-histogram %t6.o 2>&1 | \
279 # RUN: FileCheck %s -DFILE=%t6.o --check-prefixes=WARN,GNU-HASH
281 # WARN: warning: '[[FILE]]': the hash table at offset 0x78 goes past the end of the file (0x358…
282 # GNU-HASH: Histogram for `.gnu.hash' bucket list length (total of 3 buckets)
290 - Name: .hash
297 - Name: .gnu.hash
313 ## sizeof(.hash) == 0x14.
321 FirstSec: .hash
324 ## Check we report a proper warning when the GNU hash table goes past the end of the file.
326 ## Case A: the 'maskwords' field is set so that the GNU hash table goes past the end of the file.
328 # RUN: llvm-readelf --elf-hash-histogram %t7 2>&1 | \
333 ## Case B: the 'nbuckets' field is set so that the GNU hash table goes past the end of the file.
335 # RUN: llvm-readelf --elf-hash-histogram %t8 2>&1 | \
344 - Name: .gnu.hash
352 ## The number of hash buckets. The value of 1 is no-op.
369 FirstSec: .gnu.hash
375 ## filter, a single zero entry in the hash bucket and no values.
378 ## included in the hash table can be set to the number of dynamic symbols,
387 # RUN: llvm-readelf --elf-hash-histogram %t9 2>&1 | \
390 # ERR6: warning: '[[FILE]]': unable to print the GNU hash table histogram: the first hashed symbol …
394 # RUN: llvm-readelf --elf-hash-histogram %t10 2>&1 | \
399 # RUN: llvm-readelf --elf-hash-histogram %t11 2>&1 | \
408 - Name: .gnu.hash
429 FirstSec: .gnu.hash
436 # RUN: llvm-readelf --elf-hash-histogram %t12 2>&1 | \
439 # ERR7: warning: '[[FILE]]': unable to print the GNU hash table histogram: no dynamic symbol table …
442 # RUN: llvm-readelf --elf-hash-histogram %t13 2>&1 | \
445 # ERR8: warning: '[[FILE]]': unable to print the GNU hash table histogram: the dynamic symbol table…
453 - Name: .gnu.hash
475 FirstSec: .gnu.hash
476 LastSec: .gnu.hash