HomePhabricator

[clang] Use SourceLocation as key in hash maps, NFCI

Authored by miyuki on Oct 20 2020, 8:21 AM.

Description

[clang] Use SourceLocation as key in hash maps, NFCI

The patch adjusts the existing llvm::DenseMap<unsigned, T> and
llvm::DenseSet<unsigned> objects that store source locations, so
that they use SourceLocation directly instead of unsigned.

This patch relies on the DenseMapInfo trait added in D89719.

It also replaces the construction of SourceLocation objects from
the constants -1 and -2 with calls to the trait's methods getEmptyKey
and getTombstoneKey where appropriate.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D69840

Details