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

Side by Side Diff: lib/Target/ARM/ARMSelectionDAGInfo.cpp

Issue 939073008: Rebased PNaCl localmods in LLVM to 223109 (Closed)
Patch Set: undo localmod Created 5 years, 9 months 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
« no previous file with comments | « lib/Target/ARM/ARMNaClRewritePass.cpp ('k') | lib/Target/ARM/ARMSubtarget.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===-- ARMSelectionDAGInfo.cpp - ARM SelectionDAG Info -------------------===// 1 //===-- ARMSelectionDAGInfo.cpp - ARM SelectionDAG Info -------------------===//
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 implements the ARMSelectionDAGInfo class. 10 // This file implements the ARMSelectionDAGInfo class.
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 // GNU library uses (ptr, value, size) 145 // GNU library uses (ptr, value, size)
146 // See RTABI section 4.3.4 146 // See RTABI section 4.3.4
147 SDValue ARMSelectionDAGInfo:: 147 SDValue ARMSelectionDAGInfo::
148 EmitTargetCodeForMemset(SelectionDAG &DAG, SDLoc dl, 148 EmitTargetCodeForMemset(SelectionDAG &DAG, SDLoc dl,
149 SDValue Chain, SDValue Dst, 149 SDValue Chain, SDValue Dst,
150 SDValue Src, SDValue Size, 150 SDValue Src, SDValue Size,
151 unsigned Align, bool isVolatile, 151 unsigned Align, bool isVolatile,
152 MachinePointerInfo DstPtrInfo) const { 152 MachinePointerInfo DstPtrInfo) const {
153 const ARMSubtarget &Subtarget = DAG.getTarget().getSubtarget<ARMSubtarget>(); 153 const ARMSubtarget &Subtarget = DAG.getTarget().getSubtarget<ARMSubtarget>();
154 // Use default for non-AAPCS (or MachO) subtargets 154 // Use default for non-AAPCS (or MachO) subtargets
155 if (!Subtarget.isAAPCS_ABI() || Subtarget.isTargetMachO() || 155 // @LOCALMOD-START
156 if (Subtarget.isTargetNaCl() || !EnableARMAEABIFunctions ||
157 !Subtarget.isAAPCS_ABI() || Subtarget.isTargetMachO() ||
156 Subtarget.isTargetWindows()) 158 Subtarget.isTargetWindows())
157 return SDValue(); 159 return SDValue();
160 // @LOCALMOD-END
158 161
159 const ARMTargetLowering &TLI = 162 const ARMTargetLowering &TLI =
160 *DAG.getTarget().getSubtarget<ARMSubtarget>().getTargetLowering(); 163 *DAG.getTarget().getSubtarget<ARMSubtarget>().getTargetLowering();
161 TargetLowering::ArgListTy Args; 164 TargetLowering::ArgListTy Args;
162 TargetLowering::ArgListEntry Entry; 165 TargetLowering::ArgListEntry Entry;
163 166
164 // First argument: data pointer 167 // First argument: data pointer
165 Type *IntPtrTy = TLI.getDataLayout()->getIntPtrType(*DAG.getContext()); 168 Type *IntPtrTy = TLI.getDataLayout()->getIntPtrType(*DAG.getContext());
166 Entry.Node = Dst; 169 Entry.Node = Dst;
167 Entry.Ty = IntPtrTy; 170 Entry.Ty = IntPtrTy;
(...skipping 22 matching lines...) Expand all
190 CLI.setDebugLoc(dl).setChain(Chain) 193 CLI.setDebugLoc(dl).setChain(Chain)
191 .setCallee(TLI.getLibcallCallingConv(RTLIB::MEMSET), 194 .setCallee(TLI.getLibcallCallingConv(RTLIB::MEMSET),
192 Type::getVoidTy(*DAG.getContext()), 195 Type::getVoidTy(*DAG.getContext()),
193 DAG.getExternalSymbol(TLI.getLibcallName(RTLIB::MEMSET), 196 DAG.getExternalSymbol(TLI.getLibcallName(RTLIB::MEMSET),
194 TLI.getPointerTy()), std::move(Args), 0) 197 TLI.getPointerTy()), std::move(Args), 0)
195 .setDiscardResult(); 198 .setDiscardResult();
196 199
197 std::pair<SDValue,SDValue> CallResult = TLI.LowerCallTo(CLI); 200 std::pair<SDValue,SDValue> CallResult = TLI.LowerCallTo(CLI);
198 return CallResult.second; 201 return CallResult.second;
199 } 202 }
OLDNEW
« no previous file with comments | « lib/Target/ARM/ARMNaClRewritePass.cpp ('k') | lib/Target/ARM/ARMSubtarget.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698