diff options
author | Howard Hinnant <hhinnant@apple.com> | 2011-12-03 21:11:36 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2011-12-03 21:11:36 +0000 |
commit | 9b0cd149aa98763622abedda0a2573c772b2e9c0 (patch) | |
tree | 9acf18756059c162c1f439e522da974ff7514e53 /llvm/lib/MC/MCObjectFileInfo.cpp | |
parent | 1075acafeb56a47c34c7bcd0024a103340ff55d6 (diff) | |
download | llvm-9b0cd149aa98763622abedda0a2573c772b2e9c0.zip llvm-9b0cd149aa98763622abedda0a2573c772b2e9c0.tar.gz llvm-9b0cd149aa98763622abedda0a2573c772b2e9c0.tar.bz2 |
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 'llvm/lib/MC/MCObjectFileInfo.cpp')
0 files changed, 0 insertions, 0 deletions