[llvm-commits] [llvm] r74628 - in /llvm/trunk/include/llvm/CodeGen: MachineInstrBuilder.h MachineOperand.h
Nick Lewycky
nicholas at mxc.ca
Wed Jul 1 21:09:01 PDT 2009
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
>
More information about the llvm-commits
mailing list