mirror of
https://github.com/RPCS3/llvm.git
synced 2024-11-24 20:30:06 +00:00
[NFC] Rename DwarfAccelTable and move header.
This patch renames DwarfAccelTable.{h,cpp} to AccelTable.{h,cpp} and moves the header to the include dir so it is accessible by the dsymutil implementation. Differential revision: https://reviews.llvm.org/D42529 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@323654 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4cd1837737
commit
633599ba03
@ -1,4 +1,4 @@
|
||||
//==- llvm/CodeGen/DwarfAccelTable.h - Dwarf Accelerator Tables --*- C++ -*-==//
|
||||
//==- include/llvm/CodeGen/AccelTable.h - Accelerator Tables -----*- C++ -*-==//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
@ -7,7 +7,7 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file contains support for writing dwarf accelerator tables.
|
||||
// This file contains support for writing accelerator tables.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
@ -31,37 +31,63 @@
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
|
||||
// The dwarf accelerator tables are an indirect hash table optimized
|
||||
// for null lookup rather than access to known data. They are output into
|
||||
// an on-disk format that looks like this:
|
||||
//
|
||||
// .-------------.
|
||||
// | HEADER |
|
||||
// |-------------|
|
||||
// | BUCKETS |
|
||||
// |-------------|
|
||||
// | HASHES |
|
||||
// |-------------|
|
||||
// | OFFSETS |
|
||||
// |-------------|
|
||||
// | DATA |
|
||||
// `-------------'
|
||||
//
|
||||
// where the header contains a magic number, version, type of hash function,
|
||||
// the number of buckets, total number of hashes, and room for a special
|
||||
// struct of data and the length of that struct.
|
||||
//
|
||||
// The buckets contain an index (e.g. 6) into the hashes array. The hashes
|
||||
// section contains all of the 32-bit hash values in contiguous memory, and
|
||||
// the offsets contain the offset into the data area for the particular
|
||||
// hash.
|
||||
//
|
||||
// For a lookup example, we could hash a function name and take it modulo the
|
||||
// number of buckets giving us our bucket. From there we take the bucket value
|
||||
// as an index into the hashes table and look at each successive hash as long
|
||||
// as the hash value is still the same modulo result (bucket value) as earlier.
|
||||
// If we have a match we look at that same entry in the offsets table and
|
||||
// grab the offset in the data for our final match.
|
||||
/// The DWARF and Apple accelerator tables are an indirect hash table optimized
|
||||
/// for null lookup rather than access to known data. The Apple accelerator
|
||||
/// tables are a precursor of the newer DWARF v5 accelerator tables. Both
|
||||
/// formats share common design ideas.
|
||||
///
|
||||
/// The Apple accelerator table are output into an on-disk format that looks
|
||||
/// like this:
|
||||
///
|
||||
/// .------------------.
|
||||
/// | HEADER |
|
||||
/// |------------------|
|
||||
/// | BUCKETS |
|
||||
/// |------------------|
|
||||
/// | HASHES |
|
||||
/// |------------------|
|
||||
/// | OFFSETS |
|
||||
/// |------------------|
|
||||
/// | DATA |
|
||||
/// `------------------'
|
||||
///
|
||||
/// The header contains a magic number, version, type of hash function,
|
||||
/// the number of buckets, total number of hashes, and room for a special struct
|
||||
/// of data and the length of that struct.
|
||||
///
|
||||
/// The buckets contain an index (e.g. 6) into the hashes array. The hashes
|
||||
/// section contains all of the 32-bit hash values in contiguous memory, and the
|
||||
/// offsets contain the offset into the data area for the particular hash.
|
||||
///
|
||||
/// For a lookup example, we could hash a function name and take it modulo the
|
||||
/// number of buckets giving us our bucket. From there we take the bucket value
|
||||
/// as an index into the hashes table and look at each successive hash as long
|
||||
/// as the hash value is still the same modulo result (bucket value) as earlier.
|
||||
/// If we have a match we look at that same entry in the offsets table and grab
|
||||
/// the offset in the data for our final match.
|
||||
///
|
||||
/// The DWARFv5 accelerator table consists of zero or more name indices that
|
||||
/// are output into an on-disk format that looks like this:
|
||||
///
|
||||
/// .------------------.
|
||||
/// | HEADER |
|
||||
/// |------------------|
|
||||
/// | CU LIST |
|
||||
/// |------------------|
|
||||
/// | LOCAL TU LIST |
|
||||
/// |------------------|
|
||||
/// | FOREIGN TU LIST |
|
||||
/// |------------------|
|
||||
/// | HASH TABLE |
|
||||
/// |------------------|
|
||||
/// | NAME TABLE |
|
||||
/// |------------------|
|
||||
/// | ABBREV TABLE |
|
||||
/// |------------------|
|
||||
/// | ENTRY POOL |
|
||||
/// `------------------'
|
||||
///
|
||||
/// For the full documentation please refer to the DWARF 5 standard.
|
||||
|
||||
namespace llvm {
|
||||
|
@ -1,4 +1,4 @@
|
||||
//===- llvm/CodeGen/DwarfAccelTable.cpp - Dwarf Accelerator Tables --------===//
|
||||
//===- llvm/CodeGen/AsmPrinter/AccelTable.cpp - Accelerator Tables --------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
@ -7,11 +7,11 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file contains support for writing dwarf accelerator tables.
|
||||
// This file contains support for writing accelerator tables.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "DwarfAccelTable.h"
|
||||
#include "llvm/CodeGen/AccelTable.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
#include "llvm/ADT/Twine.h"
|
@ -1,4 +1,5 @@
|
||||
add_llvm_library(LLVMAsmPrinter
|
||||
AccelTable.cpp
|
||||
AddressPool.cpp
|
||||
ARMException.cpp
|
||||
AsmPrinter.cpp
|
||||
@ -9,7 +10,6 @@ add_llvm_library(LLVMAsmPrinter
|
||||
DebugLocStream.cpp
|
||||
DIE.cpp
|
||||
DIEHash.cpp
|
||||
DwarfAccelTable.cpp
|
||||
DwarfCFIException.cpp
|
||||
DwarfCompileUnit.cpp
|
||||
DwarfDebug.cpp
|
||||
|
@ -16,7 +16,6 @@
|
||||
#include "DIEHash.h"
|
||||
#include "DebugLocEntry.h"
|
||||
#include "DebugLocStream.h"
|
||||
#include "DwarfAccelTable.h"
|
||||
#include "DwarfCompileUnit.h"
|
||||
#include "DwarfExpression.h"
|
||||
#include "DwarfFile.h"
|
||||
@ -31,6 +30,7 @@
|
||||
#include "llvm/ADT/Triple.h"
|
||||
#include "llvm/ADT/Twine.h"
|
||||
#include "llvm/BinaryFormat/Dwarf.h"
|
||||
#include "llvm/CodeGen/AccelTable.h"
|
||||
#include "llvm/CodeGen/AsmPrinter.h"
|
||||
#include "llvm/CodeGen/DIE.h"
|
||||
#include "llvm/CodeGen/LexicalScopes.h"
|
||||
|
@ -18,7 +18,6 @@
|
||||
#include "DbgValueHistoryCalculator.h"
|
||||
#include "DebugHandlerBase.h"
|
||||
#include "DebugLocStream.h"
|
||||
#include "DwarfAccelTable.h"
|
||||
#include "DwarfFile.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
@ -31,6 +30,7 @@
|
||||
#include "llvm/ADT/StringMap.h"
|
||||
#include "llvm/ADT/StringRef.h"
|
||||
#include "llvm/BinaryFormat/Dwarf.h"
|
||||
#include "llvm/CodeGen/AccelTable.h"
|
||||
#include "llvm/CodeGen/MachineInstr.h"
|
||||
#include "llvm/IR/DebugInfoMetadata.h"
|
||||
#include "llvm/IR/DebugLoc.h"
|
||||
|
Loading…
Reference in New Issue
Block a user