Displaying 2 results from an estimated 2 matches for "unionindex".
2010 Mar 15
0
[LLVMdev] [patch] Writing ConstantUnions
...f (isa<ConstantUnion>(C)) {
+ Code = bitc::CST_CODE_AGGREGATE;
+
+ // Unions only have one entry but we must send type along with it.
+ const Type *EntryKind = C->getOperand(0)->getType();
+
+ const UnionType *UnTy = cast<UnionType>(C->getType());
+ int UnionIndex = UnTy->getElementTypeIndex(EntryKind);
+ assert(UnionIndex != -1 && "Constant union contains invalid entry");
+
+ Record.push_back(UnionIndex);
+ Record.push_back(VE.getValueID(C->getOperand(0)));
+
+ AbbrevToUse = AggregateAbbrev;
} else if (const...
2010 Mar 15
3
[LLVMdev] [patch] Writing ConstantUnions
Hello,
I noticed a bit of a gap in the current code for unions: a
ConstantUnion cannot be written out to .ll.
Hopefully I'm not stepping on Talin's toes by posting this, it's a
fairly straightforward adaptation of the code for structs just above.
Tim.
--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
--------------