Displaying 9 results from an estimated 9 matches for "getunit".
2015 Dec 04
2
InstrStage, Interpretation of getUnits()
Here is the code
<https://github.com/llvm-mirror/llvm/blob/c68dcdb413079d92118839dbd835e125293f411a/include/llvm/MC/MCInstrItineraries.h#L75>
for InstrStage::getUnits()
/// \brief Returns the choice of FUs.
unsigned getUnits() const { return Units_; }
This method returns an integer. How does one interpret it? As far as I see
it it should tell me what resources are used by a given stage but I can't
figure out what a return value means. Would anyone care to...
2016 May 08
2
Debug info scope of explicit casting type does not seem correct
...he function is finalized the attributes will be applied, which is called from this code:
void DwarfDebug::finishSubprogramDefinitions() {
for (auto &F : MMI->getModule()->functions())
if (auto *SP = F.getSubprogram())
if (ProcessedSPNodes.count(SP) &&
SP->getUnit()->getEmissionKind() != DICompileUnit::NoDebug)
forBothCUs(*CUMap.lookup(SP->getUnit()), [&](DwarfCompileUnit &CU) {
CU.finishSubprogramDefinition(SP); <------------- In our case, this code will not be reached for the above subprogram.
});
...
}...
2020 May 31
2
LLC crash while handling DEBUG info
..., it should *not* be present. In the crash case,
`spFlags = DISPFlagOptimized`. So, I guess, `unit` field should *not* be
present, though I do not know the difference between ` DISPFlagDefinition`
and ` DISPFlagOptimized`. if that is expected, then we may need to
check `nullity`
of `DISubprogram::getUnit()` before accessing it at
https://github.com/llvm/llvm-project/blob/master/llvm/lib/CodeGen/LexicalScopes.cpp#L53
Thanks,
Mahesha
On Sun, May 31, 2020 at 11:26 AM David Blaikie <dblaikie at gmail.com> wrote:
> In theory the LLVM IR verifier (llvm/lib/IR/Verifier.cpp) should catch
>...
2020 May 31
2
LLC crash while handling DEBUG info
...cation(line: 2, column: 1, scope: !7)
-----------
Now, if I compile the above modified IR file using LLC, then LLC
crashes as below. The crash point is
https://github.com/llvm/llvm-project/blob/master/llvm/lib/CodeGen/LexicalScopes.cpp#L53.
Reason for crash is `NULL` pointer access. `DISubprogram::getUnit()`
returns `NULL` pointer since there is no `unit` field in the related
metadata info.
-----------
PLEASE submit a bug report to https://bugs.llvm.org/ and include the
crash backtrace.
Stack dump:
0. Program arguments: /opt/rocm/llvm/bin/llc foo.ll
1. Running pass 'Function Pass Mana...
2020 May 31
2
LLC crash while handling DEBUG info
...present. In the crash case, `spFlags =
> DISPFlagOptimized`. So, I guess, `unit` field should *not* be present,
> though I do not know the difference between ` DISPFlagDefinition` and `
> DISPFlagOptimized`. if that is expected, then we may need to check
> `nullity` of `DISubprogram::getUnit()` before accessing it at
> https://github.com/llvm/llvm-project/blob/master/llvm/lib/CodeGen/LexicalScopes.cpp#L53
> >
> > Thanks,
> > Mahesha
> >
> > On Sun, May 31, 2020 at 11:26 AM David Blaikie <dblaikie at gmail.com>
> wrote:
> >>
> >&g...
2020 Jun 01
2
LLC crash while handling DEBUG info
...present. In the crash case, `spFlags =
> DISPFlagOptimized`. So, I guess, `unit` field should *not* be present,
> though I do not know the difference between ` DISPFlagDefinition` and `
> DISPFlagOptimized`. if that is expected, then we may need to check
> `nullity` of `DISubprogram::getUnit()` before accessing it at
> https://github.com/llvm/llvm-project/blob/master/llvm/lib/CodeGen/LexicalScopes.cpp#L53
> >> >
> >> > Thanks,
> >> > Mahesha
> >> >
> >> > On Sun, May 31, 2020 at 11:26 AM David Blaikie <dblaikie at gmail....
2015 Nov 16
2
DFAPacketizer assert failure
...s occupied by a MCInstrDesc and
// change the current state to reflect that change.
void DFAPacketizer::reserveResources(const llvm::MCInstrDesc *MID) {
unsigned InsnClass = MID->getSchedClass();
const llvm::InstrStage *IS = InstrItins->beginStage(InsnClass);
unsigned FuncUnits = IS->getUnits();
UnsignPair StateTrans = UnsignPair(CurrentState, FuncUnits);
ReadTable(CurrentState);
assert(CachedTable.count(StateTrans) != 0);
CurrentState = CachedTable[StateTrans];
}
This happens at the packetization stage, i.e. scheduling seems to work. My
schedule description is not very differ...
2016 May 07
2
Debug info scope of explicit casting type does not seem correct
Hi David,
OK, I got that DIE in Compile Unit scope may point to a DIE in subprogram scope.
But how about that we are emitting a subprogram entry that has no attributes?
0x0000002b: DW_TAG_subprogram [3] *
0x0000002c: DW_TAG_typedef [4]
DW_AT_type [DW_FORM_ref4] (cu + 0x0040 => {0x00000040})
DW_AT_name [DW_FORM_strp] (
2012 Apr 19
0
[LLVMdev] Target Dependent Hexagon Packetizer patch
...If it doesn't, we ignore the instruction.
>> + const MCInstrDesc& TID = MI->getDesc();
>> + unsigned SchedClass = TID.getSchedClass();
>> + const InstrStage* IS = ResourceTracker->getInstrItins()->beginStage(SchedClass);
>> + unsigned FuncUnits = IS->getUnits();
>> + return !FuncUnits;
>> +}
>> +
>> +// isSoloInstruction: - Returns true for instructions that must be
>> +// scheduled in their own packet.
>> +bool HexagonPacketizerList::isSoloInstruction(MachineInstr *MI) {
>> +
>> + if (MI->isInlineAs...