mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-04 21:30:49 +00:00
Move comment to above method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77412 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
eff2ab61b5
commit
0dafca9076
@ -235,27 +235,6 @@ void DwarfException::EmitEHFrame(const FunctionEHFrameInfo &EHFrameInfo) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// EmitExceptionTable - Emit landing pads and actions.
|
|
||||||
///
|
|
||||||
/// The general organization of the table is complex, but the basic concepts are
|
|
||||||
/// easy. First there is a header which describes the location and organization
|
|
||||||
/// of the three components that follow.
|
|
||||||
///
|
|
||||||
/// 1. The landing pad site information describes the range of code covered by
|
|
||||||
/// the try. In our case it's an accumulation of the ranges covered by the
|
|
||||||
/// invokes in the try. There is also a reference to the landing pad that
|
|
||||||
/// handles the exception once processed. Finally an index into the actions
|
|
||||||
/// table.
|
|
||||||
/// 2. The action table, in our case, is composed of pairs of type ids and next
|
|
||||||
/// action offset. Starting with the action index from the landing pad
|
|
||||||
/// site, each type Id is checked for a match to the current exception. If
|
|
||||||
/// it matches then the exception and type id are passed on to the landing
|
|
||||||
/// pad. Otherwise the next action is looked up. This chain is terminated
|
|
||||||
/// with a next action of zero. If no type id is found the the frame is
|
|
||||||
/// unwound and handling continues.
|
|
||||||
/// 3. Type id table contains references to all the C++ typeinfo for all
|
|
||||||
/// catches in the function. This tables is reversed indexed base 1.
|
|
||||||
|
|
||||||
/// SharedTypeIds - How many leading type ids two landing pads have in common.
|
/// SharedTypeIds - How many leading type ids two landing pads have in common.
|
||||||
unsigned DwarfException::SharedTypeIds(const LandingPadInfo *L,
|
unsigned DwarfException::SharedTypeIds(const LandingPadInfo *L,
|
||||||
const LandingPadInfo *R) {
|
const LandingPadInfo *R) {
|
||||||
@ -470,6 +449,26 @@ ComputeCallSiteTable(SmallVectorImpl<CallSiteEntry> &CallSites,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// EmitExceptionTable - Emit landing pads and actions.
|
||||||
|
///
|
||||||
|
/// The general organization of the table is complex, but the basic concepts are
|
||||||
|
/// easy. First there is a header which describes the location and organization
|
||||||
|
/// of the three components that follow.
|
||||||
|
///
|
||||||
|
/// 1. The landing pad site information describes the range of code covered by
|
||||||
|
/// the try. In our case it's an accumulation of the ranges covered by the
|
||||||
|
/// invokes in the try. There is also a reference to the landing pad that
|
||||||
|
/// handles the exception once processed. Finally an index into the actions
|
||||||
|
/// table.
|
||||||
|
/// 2. The action table, in our case, is composed of pairs of type ids and next
|
||||||
|
/// action offset. Starting with the action index from the landing pad
|
||||||
|
/// site, each type Id is checked for a match to the current exception. If
|
||||||
|
/// it matches then the exception and type id are passed on to the landing
|
||||||
|
/// pad. Otherwise the next action is looked up. This chain is terminated
|
||||||
|
/// with a next action of zero. If no type id is found the the frame is
|
||||||
|
/// unwound and handling continues.
|
||||||
|
/// 3. Type id table contains references to all the C++ typeinfo for all
|
||||||
|
/// catches in the function. This tables is reversed indexed base 1.
|
||||||
void DwarfException::EmitExceptionTable() {
|
void DwarfException::EmitExceptionTable() {
|
||||||
const std::vector<GlobalVariable *> &TypeInfos = MMI->getTypeInfos();
|
const std::vector<GlobalVariable *> &TypeInfos = MMI->getTypeInfos();
|
||||||
const std::vector<unsigned> &FilterIds = MMI->getFilterIds();
|
const std::vector<unsigned> &FilterIds = MMI->getFilterIds();
|
||||||
@ -554,6 +553,7 @@ void DwarfException::EmitExceptionTable() {
|
|||||||
Asm->EOL("LPStart format (DW_EH_PE_omit)");
|
Asm->EOL("LPStart format (DW_EH_PE_omit)");
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
|
// FIXME: This should default to what the system wants, not just "absptr".
|
||||||
if (!TypeInfos.empty() || !FilterIds.empty()) {
|
if (!TypeInfos.empty() || !FilterIds.empty()) {
|
||||||
Asm->EmitInt8(TAI->PreferredEHDataFormat(DwarfEncoding::Data, true));
|
Asm->EmitInt8(TAI->PreferredEHDataFormat(DwarfEncoding::Data, true));
|
||||||
// FIXME: The comment here should correspond with what PreferredEHDataFormat
|
// FIXME: The comment here should correspond with what PreferredEHDataFormat
|
||||||
|
Loading…
Reference in New Issue
Block a user