Add comments.
authorAkira Hatanaka <ahatanaka@mips.com>
Tue, 28 Feb 2012 03:18:43 +0000 (03:18 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Tue, 28 Feb 2012 03:18:43 +0000 (03:18 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151615 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/MipsInstrInfo.td

index 7b3308b5825c76d17534e471a7d2c4d069e090f9..dc60cf438ef1668a17b7071681154b2a04a3d9bd 100644 (file)
@@ -752,6 +752,10 @@ def CPRESTORE : MipsPseudo<(outs), (ins i32imm:$loc), ".cprestore\t$loc", []>;
 // instructions 0 and 1 in the sequence above during MC lowering.
 // SETGP2 is emitted just before register allocation and converted to
 // instruction 2 just prior to post-RA scheduling.
+//
+// These pseudo instructions are needed to ensure no instructions are inserted
+// before or between instructions 0 and 1, which is a limitation imposed by
+// GNU linker.
 
 def SETGP01 : MipsPseudo<(outs CPURegs:$dst), (ins), "", []>;
 def SETGP2 : MipsPseudo<(outs CPURegs:$globalreg), (ins CPURegs:$picreg), "",