#
bdf0381e |
| 17-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Make the native reader support enumerators.
Previously we would dump the names of enum types, but not their enumerator values. This adds support for enumerator values. In doing so, we have t
[PDB] Make the native reader support enumerators.
Previously we would dump the names of enum types, but not their enumerator values. This adds support for enumerator values. In doing so, we have to introduce a general purpose mechanism for caching symbol indices of field list members. Unlike global types, FieldList members do not have a TypeIndex. So instead, we identify them by the pair {TypeIndexOfFieldList, IndexInFieldList}.
llvm-svn: 342415
show more ...
|
#
4727ac23 |
| 17-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Make the native reader support modified types.
Previously for cv-qualified types, we would just ignore them and they would never get printed. Now we can enumerate them and cache them like any
[PDB] Make the native reader support modified types.
Previously for cv-qualified types, we would just ignore them and they would never get printed. Now we can enumerate them and cache them like any other symbol type.
llvm-svn: 342414
show more ...
|
#
4d68951e |
| 14-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Refactor a little of the Symbol creation code.
Eventually we need to be able to support nested types, which don't have an associated CVType record. To handle this, remove the CVType from all
[PDB] Refactor a little of the Symbol creation code.
Eventually we need to be able to support nested types, which don't have an associated CVType record. To handle this, remove the CVType from all of the record classes, and instead store the deserialized record. Then move the deserialization up to the thing that creates the type. This actually makes error handling better anyway as we can return an invalid symbol instead of asserting false.
llvm-svn: 342284
show more ...
|
Revision tags: llvmorg-7.0.0, llvmorg-7.0.0-rc3 |
|
#
da4b63ab |
| 07-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Support pointer types in the native reader.
In order to start testing this, I've added a new mode to llvm-pdbutil which is only really useful for writing tests. It just dumps the value of raw
[PDB] Support pointer types in the native reader.
In order to start testing this, I've added a new mode to llvm-pdbutil which is only really useful for writing tests. It just dumps the value of raw fields in record format. This isn't really ideal and it won't allow us to test some important cases, but it's better than nothing for now.
llvm-svn: 341729
show more ...
|
#
5d629966 |
| 07-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Rename some files in the native reader.
By calling these NativeType<foo>.cpp, they will all be sorted together, and it also distinguishes the types from the symbols.
llvm-svn: 341609
|
#
8ab7dd60 |
| 07-Sep-2018 |
Zachary Turner <zturner@google.com> |
[PDB] Create a SymbolCache class.
Part of the responsibility of the native PDB reader is to cache symbols the first time they are accessed, so they can then be looked up by an ID. Furthermore, we n
[PDB] Create a SymbolCache class.
Part of the responsibility of the native PDB reader is to cache symbols the first time they are accessed, so they can then be looked up by an ID. Furthermore, we need to resolve type indices to records that we vend to the user, and other things. Previously this code was all thrown together a bit haphazardly in the native session class, but it makes sense to collect all of this into a single class whose sole responsibility is to manage the collection of known symbols.
llvm-svn: 341608
show more ...
|