summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/Parser.cpp
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2011-12-03 21:11:36 +0000
committerHoward Hinnant <hhinnant@apple.com>2011-12-03 21:11:36 +0000
commit9b0cd149aa98763622abedda0a2573c772b2e9c0 (patch)
tree9acf18756059c162c1f439e522da974ff7514e53 /clang/lib/Parse/Parser.cpp
parent1075acafeb56a47c34c7bcd0024a103340ff55d6 (diff)
downloadbcm5719-llvm-9b0cd149aa98763622abedda0a2573c772b2e9c0.tar.gz
bcm5719-llvm-9b0cd149aa98763622abedda0a2573c772b2e9c0.zip
Version #next on the hash functions for scalars. This builds on Dave's work, extends it to T*, and changes the way double and long double are handled (no longer convert to float on 32 bit). I also picked up a minor bug with uninitialized bits on the upper end of size_t when sizeof(size_t) > sizeof(T), e.g. in hash<float>. Most of the functionality has been put in one place: __scalar_hash in <memory>. Unfortunately I could not reuse __scalar_hash for hash<long double> on x86 because of the padding bits which need to be zeroed. I didn't want to add this zeroing step to the more general __scalar_hash when it isn't needed (in the absence of padding bits). I'm not ignoring the hash<string> issue (possibly changing that to a better hash). I just haven't gotten there yet.
llvm-svn: 145778
Diffstat (limited to 'clang/lib/Parse/Parser.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud