Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Side by Side Diff: lib/Target/Mips/MipsInstrInfo.td

Issue 27690005: [MIPS] Modify LongBranch expansion to work with sandboxing (Closed) Base URL: http://git.chromium.org/native_client/pnacl-llvm.git@master
Patch Set: Changes per code review. Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 //===- MipsInstrInfo.td - Target Description for Mips Target -*- tablegen -*-=// 1 //===- MipsInstrInfo.td - Target Description for Mips Target -*- tablegen -*-=//
2 // 2 //
3 // The LLVM Compiler Infrastructure 3 // The LLVM Compiler Infrastructure
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 // 9 //
10 // This file contains the Mips implementation of the TargetInstrInfo class. 10 // This file contains the Mips implementation of the TargetInstrInfo class.
(...skipping 823 matching lines...) Expand 10 before | Expand all | Expand 10 after
834 MipsAsmPseudoInst<(outs CPURegs:$dst), (ins CPURegs:$src1, CPURegs:$src2), 834 MipsAsmPseudoInst<(outs CPURegs:$dst), (ins CPURegs:$src1, CPURegs:$src2),
835 "sfi_return_preamble\t$dst, $src1, $src2">; 835 "sfi_return_preamble\t$dst, $src1, $src2">;
836 836
837 def SFI_NOP_IF_AT_BUNDLE_END : 837 def SFI_NOP_IF_AT_BUNDLE_END :
838 MipsAsmPseudoInst<(outs), (ins), "sfi_nop_if_at_bundle_end">; 838 MipsAsmPseudoInst<(outs), (ins), "sfi_nop_if_at_bundle_end">;
839 839
840 def SFI_DATA_MASK : 840 def SFI_DATA_MASK :
841 MipsAsmPseudoInst<(outs CPURegs:$dst), (ins CPURegs:$src1, CPURegs:$src2), 841 MipsAsmPseudoInst<(outs CPURegs:$dst), (ins CPURegs:$src1, CPURegs:$src2),
842 "sfi_data_mask\t$dst, $src1, $src2">; 842 "sfi_data_mask\t$dst, $src1, $src2">;
843 843
844 // See the comment in MipsLongBranch.cpp why we need these two instructions.
845 def NACL_LONG_BRANCH_LUi :
846 MipsAsmPseudoInst<(outs CPURegs:$dst), (ins brtarget:$tgt, brtarget:$baltgt),
847 "nacl_long_branch_lui\t$dst, $tgt, $baltgt">;
848
849 def NACL_LONG_BRANCH_ADDiu :
850 MipsAsmPseudoInst<(outs CPURegs:$dst),
851 (ins CPURegs:$src, brtarget:$tgt, brtarget:$baltgt),
852 "nacl_long_branch_addiu\t$dst, $src, $tgt, $baltgt">;
853
844 // @LOCALMOD-END 854 // @LOCALMOD-END
845 855
846 // Return RA. 856 // Return RA.
847 let isReturn=1, isTerminator=1, hasDelaySlot=1, isBarrier=1, hasCtrlDep=1 in 857 let isReturn=1, isTerminator=1, hasDelaySlot=1, isBarrier=1, hasCtrlDep=1 in
848 def RetRA : PseudoSE<(outs), (ins), [(MipsRet)]>; 858 def RetRA : PseudoSE<(outs), (ins), [(MipsRet)]>;
849 859
850 let Defs = [SP], Uses = [SP], hasSideEffects = 1 in { 860 let Defs = [SP], Uses = [SP], hasSideEffects = 1 in {
851 def ADJCALLSTACKDOWN : MipsPseudo<(outs), (ins i32imm:$amt), 861 def ADJCALLSTACKDOWN : MipsPseudo<(outs), (ins i32imm:$amt),
852 [(callseq_start timm:$amt)]>; 862 [(callseq_start timm:$amt)]>;
853 def ADJCALLSTACKUP : MipsPseudo<(outs), (ins i32imm:$amt1, i32imm:$amt2), 863 def ADJCALLSTACKUP : MipsPseudo<(outs), (ins i32imm:$amt1, i32imm:$amt2),
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
1387 include "Mips16InstrFormats.td" 1397 include "Mips16InstrFormats.td"
1388 include "Mips16InstrInfo.td" 1398 include "Mips16InstrInfo.td"
1389 1399
1390 // DSP 1400 // DSP
1391 include "MipsDSPInstrFormats.td" 1401 include "MipsDSPInstrFormats.td"
1392 include "MipsDSPInstrInfo.td" 1402 include "MipsDSPInstrInfo.td"
1393 1403
1394 // Micromips 1404 // Micromips
1395 include "MicroMipsInstrFormats.td" 1405 include "MicroMipsInstrFormats.td"
1396 include "MicroMipsInstrInfo.td" 1406 include "MicroMipsInstrInfo.td"
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698