[llvm-commits] [llvm] r74628 - in /llvm/trunk/include/llvm/CodeGen: MachineInstrBuilder.h MachineOperand.h
Devang Patel
devang.patel at gmail.com
Thu Jul 2 10:38:58 PDT 2009
Fixed
On Wed, Jul 1, 2009 at 9:09 PM, Nick Lewycky<nicholas at mxc.ca> wrote:
> Devang Patel wrote:
>> Author: dpatel
>> Date: Wed Jul 1 14:08:07 2009
>> New Revision: 74628
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=74628&view=rev
>> Log:
>> Add machine operand for MDNodes. This will be used to communicate debug info.
>>
>> Modified:
>> llvm/trunk/include/llvm/CodeGen/MachineInstrBuilder.h
>> llvm/trunk/include/llvm/CodeGen/MachineOperand.h
>>
>> Modified: llvm/trunk/include/llvm/CodeGen/MachineInstrBuilder.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineInstrBuilder.h?rev=74628&r1=74627&r2=74628&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/include/llvm/CodeGen/MachineInstrBuilder.h (original)
>> +++ llvm/trunk/include/llvm/CodeGen/MachineInstrBuilder.h Wed Jul 1 14:08:07 2009
>> @@ -107,6 +107,13 @@
>> return *this;
>> }
>>
>> + const MachineInstrBuilder &addMetadata(MDNode *N,
>> + int64_t Offset = 0,
>> + unsigned char TargetFlags = 0) const {
>> + MI->addOperand(MachineOperand::CreateMDNode(N, Offset, TargetFlags));
>> + return *this;
>> + }
>> +
>> const MachineInstrBuilder &addExternalSymbol(const char *FnName,
>> int64_t Offset = 0,
>> unsigned char TargetFlags = 0) const {
>>
>> Modified: llvm/trunk/include/llvm/CodeGen/MachineOperand.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineOperand.h?rev=74628&r1=74627&r2=74628&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/include/llvm/CodeGen/MachineOperand.h (original)
>> +++ llvm/trunk/include/llvm/CodeGen/MachineOperand.h Wed Jul 1 14:08:07 2009
>> @@ -23,6 +23,7 @@
>> class ConstantFP;
>> class MachineBasicBlock;
>> class GlobalValue;
>> +class MDNode;
>> class MachineInstr;
>> class TargetMachine;
>> class MachineRegisterInfo;
>> @@ -41,7 +42,8 @@
>> MO_ConstantPoolIndex, ///< Address of indexed Constant in Constant Pool
>> MO_JumpTableIndex, ///< Address of indexed Jump Table for switch
>> MO_ExternalSymbol, ///< Name of external global symbol
>> - MO_GlobalAddress ///< Address of a global value
>> + MO_GlobalAddress, ///< Address of a global value
>> + MO_Metadata ///< Metadata info
>> };
>>
>> private:
>> @@ -107,6 +109,7 @@
>> int Index; // For MO_*Index - The index itself.
>> const char *SymbolName; // For MO_ExternalSymbol.
>> GlobalValue *GV; // For MO_GlobalAddress.
>> + MDNode *Node; // For MO_Metadata.
>
> Tab.
>
>> } Val;
>> int64_t Offset; // An offset from the object.
>> } OffsetedInfo;
>> @@ -423,6 +426,14 @@
>> Op.setTargetFlags(TargetFlags);
>> return Op;
>> }
>> + static MachineOperand CreateMDNode(MDNode *N, int64_t Offset,
>> + unsigned char TargetFlags = 0) {
>
> Tabs.
>
> Nick
>
>> + MachineOperand Op(MachineOperand::MO_Metadata);
>> + Op.Contents.OffsetedInfo.Val.Node = N;
>> + Op.setOffset(Offset);
>> + Op.setTargetFlags(TargetFlags);
>> + return Op;
>> + }
>> static MachineOperand CreateES(const char *SymName, int64_t Offset = 0,
>> unsigned char TargetFlags = 0) {
>> MachineOperand Op(MachineOperand::MO_ExternalSymbol);
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
--
-
Devang
More information about the llvm-commits
mailing list