Searched defs:ABI (Results 1 - 25 of 29) sorted by relevance

12

/external/clang/include/clang/Basic/
H A DTargetOptions.h41 /// If given, the name of the target ABI to use.
42 std::string ABI; member in class:clang::TargetOptions
/external/llvm/lib/Target/Mips/MCTargetDesc/
H A DMipsABIInfo.h1 //===---- MipsABIInfo.h - Information about MIPS ABI's --------------------===//
26 enum class ABI { Unknown, O32, N32, N64 }; class in class:llvm::MipsABIInfo
29 ABI ThisABI;
32 MipsABIInfo(ABI ThisABI) : ThisABI(ThisABI) {}
34 static MipsABIInfo Unknown() { return MipsABIInfo(ABI::Unknown); }
35 static MipsABIInfo O32() { return MipsABIInfo(ABI::O32); }
36 static MipsABIInfo N32() { return MipsABIInfo(ABI::N32); }
37 static MipsABIInfo N64() { return MipsABIInfo(ABI::N64); }
41 bool IsKnown() const { return ThisABI != ABI::Unknown; }
42 bool IsO32() const { return ThisABI == ABI
[all...]
/external/llvm/lib/Target/Mips/
H A DMipsTargetMachine.h32 // Selected ABI
33 MipsABIInfo ABI; member in class:llvm::MipsTargetMachine
69 const MipsABIInfo &getABI() const { return ABI; }
H A DMipsISelLowering.h281 return ABI.IsN64() ? Mips::A0_64 : Mips::A0;
288 return ABI.IsN64() ? Mips::A1_64 : Mips::A1;
398 // Cache the ABI from the TargetMachine, we use it everywhere.
399 const MipsABIInfo &ABI; member in class:llvm::MipsTargetLowering
H A DMipsRegisterInfo.cpp52 MipsABIInfo ABI = MF.getSubtarget<MipsSubtarget>().getABI(); local
57 return ABI.ArePtrs64bit() ? &Mips::GPR64RegClass : &Mips::GPR32RegClass;
59 return ABI.ArePtrs64bit() ? &Mips::GPRMM16_64RegClass
62 return ABI.ArePtrs64bit() ? &Mips::SP64RegClass : &Mips::SP32RegClass;
64 return ABI.ArePtrs64bit() ? &Mips::GP64RegClass : &Mips::GP32RegClass;
313 // to that of the stack's alignment as specified by the ABI. As a result,
H A DMipsSERegisterInfo.cpp111 MipsABIInfo ABI = local
139 FrameReg = ABI.GetStackPtr();
142 FrameReg = ABI.GetBasePtr();
146 FrameReg = ABI.GetStackPtr();
180 ABI.ArePtrs64bit() ? &Mips::GPR64RegClass : &Mips::GPR32RegClass;
186 BuildMI(MBB, II, DL, TII.get(ABI.GetPtrAddiuOp()), Reg)
204 BuildMI(MBB, II, DL, TII.get(ABI.GetPtrAdduOp()), Reg).addReg(FrameReg)
H A DMipsTargetStreamer.h159 ABI = P.getABI();
165 assert(ABI.hasValue() && "ABI hasn't been set!");
166 return *ABI;
170 llvm::Optional<MipsABIInfo> ABI; member in class:llvm::MipsTargetStreamer
H A DMipsLongBranch.cpp67 ABI(static_cast<const MipsTargetMachine &>(TM).getABI()) {}
92 MipsABIInfo ABI; member in class:__anon14432::MipsLongBranch
281 if (!ABI.IsN64()) {
467 !IsPIC ? 2 : (ABI.IsN64() ? 10 : (!STI.isTargetNaCl() ? 9 : 10));
H A DMipsTargetMachine.cpp52 MipsABIInfo ABI = MipsABIInfo::computeTargetABI(TT, CPU, Options.MCOptions); local
63 if (!ABI.IsN64())
73 if (ABI.IsN64() || ABI.IsN32())
103 ABI(MipsABIInfo::computeTargetABI(TT, CPU, Options.MCOptions)),
H A DMipsSEFrameLowering.cpp262 /// expandBuildPairF64 does, for the case when ABI is fpxx and mthc1 is not
263 /// available and the case where the ABI is FP64A. It is implemented here
275 // The FP64A ABI (fp64 with nooddspreg) must also use a spill/reload sequence
314 /// expandExtractElementF64 does, for the case when ABI is fpxx and mfhc1 is not
315 /// available and the case where the ABI is FP64A. It is implemented here
336 // The FP64A ABI (fp64 with nooddspreg) must also use a spill/reload sequence
387 MipsABIInfo ABI = STI.getABI(); local
388 unsigned SP = ABI.GetStackPtr();
389 unsigned FP = ABI.GetFramePtr();
390 unsigned ZERO = ABI
676 MipsABIInfo ABI = STI.getABI(); local
758 MipsABIInfo ABI = STI.getABI(); local
845 MipsABIInfo ABI = STI.getABI(); local
[all...]
H A DMipsSEInstrInfo.cpp441 MipsABIInfo ABI = Subtarget.getABI(); local
443 unsigned ADDiu = ABI.GetPtrAddiuOp();
454 unsigned Opc = ABI.GetPtrAdduOp();
456 Opc = ABI.GetPtrSubuOp();
660 // Otherwise, for O32 FPXX ABI:
709 MipsABIInfo ABI = Subtarget.getABI(); local
710 unsigned ADDU = ABI.GetPtrAdduOp();
H A DMipsAsmPrinter.cpp313 case MipsABIInfo::ABI::O32: return "abi32";
314 case MipsABIInfo::ABI::N32: return "abiN32";
315 case MipsABIInfo::ABI::N64: return "abi64";
316 default: llvm_unreachable("Unknown Mips ABI");
691 const MipsABIInfo &ABI = MTM.getABI(); local
695 // Ideally it should test for properties of the ABI and not the ABI
698 if (!isPositionIndependent() && !ABI.IsN64())
702 // Tell the assembler which ABI we are using
713 // TODO: handle O64 ABI
[all...]
H A DMipsSEISelDAGToDAG.cpp143 const MipsABIInfo &ABI = static_cast<const MipsTargetMachine &>(TM).getABI(); local
144 RC = (ABI.IsN64()) ? &Mips::GPR64RegClass : &Mips::GPR32RegClass;
149 if (ABI.IsN64()) {
181 if (ABI.IsN32()) {
194 assert(ABI.IsO32());
196 // For O32 ABI, the following instruction sequence is emitted to initialize
/external/llvm/lib/Target/ARM/
H A DARMTargetMachine.cpp127 auto ABI = computeTargetABI(TT, CPU, Options); local
143 if (ABI != ARMBaseTargetMachine::ARM_ABI_APCS)
146 // We have 64 bits floats. The APCS ABI requires them to be aligned to 32
148 if (ABI == ARMBaseTargetMachine::ARM_ABI_APCS)
151 // We have 128 and 64 bit vectors. The APCS ABI aligns them to 32 bits, others
153 if (ABI == ARMBaseTargetMachine::ARM_ABI_APCS)
155 else if (ABI != ARMBaseTargetMachine::ARM_ABI_AAPCS16)
167 if (TT.isOSNaCl() || ABI == ARMBaseTargetMachine::ARM_ABI_AAPCS16)
169 else if (ABI == ARMBaseTargetMachine::ARM_ABI_AAPCS)
205 // Default to triple-appropriate float ABI
[all...]
/external/vixl/src/aarch64/
H A Dabi-aarch64.h27 // The ABI features are only supported with C++11 or later.
32 #error "The ABI support requires C++11 or later."
58 class ABI { class in namespace:vixl::aarch64
60 explicit ABI(Register stack_pointer = sp) : stack_pointer_(stack_pointer) { function in class:vixl::aarch64::ABI
76 ABI abi(stack_pointer_);
159 inline GenericOperand ABI::GetReturnGenericOperand<void>() const {
/external/llvm/lib/Analysis/
H A DDemandedBits.cpp345 auto ABI = AliveBits.find(I); local
346 if (ABI != AliveBits.end())
347 ABPrev = ABI->second;
350 if (ABNew != ABPrev || ABI == AliveBits.end()) {
/external/skia/src/jumper/
H A DSkJumper.h20 #define MAYBE_MSABI __attribute__((ms_abi)) // Use MS' ABI, not System V.
27 // Any custom ABI to use for all non-externally-facing stage functions.
30 #define ABI __attribute__((pcs("aapcs-vfp"))) macro
32 #define ABI macro
/external/skqp/src/jumper/
H A DSkJumper.h20 #define MAYBE_MSABI __attribute__((ms_abi)) // Use MS' ABI, not System V.
27 // Any custom ABI to use for all non-externally-facing stage functions.
30 #define ABI __attribute__((pcs("aapcs-vfp"))) macro
32 #define ABI macro
/external/deqp/android/cts/runner/tests/src/com/drawelements/deqp/runner/
H A DDeqpTestRunnerTest.java64 private static final IAbi ABI = new Abi("armeabi-v7a", "32"); field in class:DeqpTestRunnerTest
154 runner.setAbi(ABI);
161 return AbiUtils.createId(ABI.getName(), runner.getPackageName());
230 EasyMock.eq(AbiUtils.createAbiFlag(ABI.getName()))))
295 AbiUtils.createAbiFlag(ABI.getName()), commandLine,
369 EasyMock.eq(true), EasyMock.eq(AbiUtils.createAbiFlag(ABI.getName()))))
535 EasyMock.eq(true), EasyMock.eq(AbiUtils.createAbiFlag(ABI.getName()))))
636 EasyMock.eq(true), EasyMock.eq(AbiUtils.createAbiFlag(ABI.getName()))))
877 EasyMock.eq(true), EasyMock.eq(AbiUtils.createAbiFlag(ABI.getName()))))
969 EasyMock.eq(AbiUtils.createAbiFlag(ABI
[all...]
/external/swiftshader/third_party/subzero/src/
H A DIceDefs.h375 enum ABI { enum in namespace:Ice
377 ABI_Platform /// Native executable ABI
/external/clang/lib/AST/
H A DTypePrinter.cpp636 llvm::StringRef clang::getParameterABISpelling(ParameterABI ABI) { argument
637 switch (ABI) {
639 llvm_unreachable("asking for spelling of ordinary parameter ABI");
647 llvm_unreachable("bad parameter ABI kind");
665 auto ABI = EPI.getABI(); local
666 if (ABI != ParameterABI::Ordinary)
667 OS << "__attribute__((" << getParameterABISpelling(ABI) << ")) ";
695 // Microsoft C++ ABI.
H A DRecordLayoutBuilder.cpp844 // Under the Itanium ABI, if there is no non-virtual primary base class,
1376 // Itanium C++ ABI 2.4:
1450 // The struct-layout algorithm is dictated by the platform ABI,
1453 // in the System V generic ABI. The basic bitfield layout rule in
1463 // platform ABI's struct-layout algorithm, with the high-level goal
1470 // Since it completely replaces the platform ABI's algorithm,
1611 // bit-field type alignment like ARM APCS ABI.
1997 // this doesn't affect the ABI.)
2001 // Template instantiations don't have key functions per Itanium C++ ABI 5.2.6.
2074 /// Does the target C++ ABI requir
2077 mustSkipTailPadding(TargetCXXABI ABI, const CXXRecordDecl *RD) argument
[all...]
/external/clang/lib/CodeGen/
H A DCodeGenModule.h27 #include "clang/Basic/ABI.h"
273 std::unique_ptr<CGCXXABI> ABI; member in class:clang::CodeGen::CodeGenModule
617 CGCXXABI &getCXXABI() const { return *ABI; }
817 // to apply any ABI rules about which other constructors/destructors
948 /// info. This applies attributes necessary for handling the ABI as well as
H A DTargetInfo.cpp11 // definition used to handle ABI compliancy.
36 // coercion happens only for the RenderScript ABI and can be removed after
430 // C++ record fields are never empty, at least in the Itanium ABI.
433 // current ABI.
545 // flag has ABI impact in the callee, this implementation cannot
587 /// DefaultABIInfo - The default implementation for ABI specific
590 /// conform to any particular ABI.
653 // WebAssembly ABI Implementation
655 // This is a very simple ABI that relies a lot on DefaultABIInfo.
739 // le32/PNaCl bitcode ABI Implementatio
8064 StringRef ABI = getTarget().getABI(); local
[all...]
/external/clang/include/clang/AST/
H A DASTContext.h438 /// \brief The current C++ ABI.
439 std::unique_ptr<CXXABI> ABI; member in class:clang::ASTContext
1832 /// \brief Return the ABI-specified alignment of a (complete) type \p T, in
1837 /// \brief Return the ABI-specified alignment of a (complete) type \p T, in
1857 /// This can be different than the ABI alignment in cases where it is
1908 /// The key function is, according to the Itanium C++ ABI section 5.2.3:
1912 /// Other ABIs use the same idea. However, the ARM C++ ABI ignores

Completed in 1760 milliseconds

12