[llvm-commits] [llvm] r40520 - in /llvm/trunk: include/llvm/CodeGen/ScheduleDAG.h lib/CodeGen/SelectionDAG/ScheduleDAG.cpp
Evan Cheng
evan.cheng at apple.com
Fri Jul 27 00:28:18 CDT 2007
I don't think they are target opcodes. These are similar to phi,
copyfromreg, etc. Target opcodes are those that are target specific,
I.e. not shared between targets.
Evan
Sent from my iPhone
On Jul 26, 2007, at 8:36 PM, Christopher Lamb <christopher.lamb at gmail.com
> wrote:
>
> On Jul 26, 2007, at 6:27 PM, Evan Cheng wrote:
>
>>
>> On Jul 26, 2007, at 1:12 AM, Christopher Lamb wrote:
>>
>>> /// EmitNode - Generate machine code for an node and needed
>>> dependencies.
>>> ///
>>> void ScheduleDAG::EmitNode(SDNode *Node,
>>> @@ -436,6 +578,14 @@
>>> // If machine instruction
>>> if (Node->isTargetOpcode()) {
>>> unsigned Opc = Node->getTargetOpcode();
>>> +
>>> + // Handle subreg insert/extract specially
>>> + if (Opc == TargetInstrInfo::EXTRACT_SUBREG ||
>>> + Opc == TargetInstrInfo::INSERT_SUBREG) {
>>> + EmitSubregNode(Node, VRBaseMap);
>>> + return;
>>> + }
>>> +
>>
>> Hi Chris,
>>
>> Is this right? EXTRACT_SUBREG and INSERT_SUBREG are not target
>> opcodes.
>
> Actually, they are both DAG nodes and target opcodes. ISel lowers
> the DAG nodes to target opcodes before schedule DAG sees them.
> --
> Christopher Lamb
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.cs.uiuc.edu/pipermail/llvm-commits/attachments/20070726/41ddf0df/attachment.html
More information about the llvm-commits
mailing list