Split the giant lookup table into 3 smaller ones

Instead of having a single, enormous LUT for all CUDA names, let's
have separate ones for different types of entity. We often know
that we're looking at a typename, or a function name, or a macro
name - so we can be more efficient (and resilient to name
collisions) by having smaller lookup tables for each of those
classes of entity).

Here we start that off by having three LUTs:
- Header names
- Type names
- Everything else

Future work could usefully split "everything else" into:
- enum values
- macro names
- function names
- everything else

It's worth noting that the "needs new matcher" todos I delete here
were actually resolved with the previous commit. It no longer
naively searches for things that start with "cu*" - it will find
exactly those things that are present in our lookup tables.
This commit is contained in:
Chris Kitching
2017-10-17 14:10:27 +01:00
parent 93c9b3ca34
commit 9da456b315
3 changed files with 460 additions and 447 deletions
File diff suppressed because it is too large Load Diff