Lines Matching +full:trade +full:- +full:off

1 //===---- TargetInfo.h - Encapsulate target details -------------*- C++ -*-===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
12 //===----------------------------------------------------------------------===//
44 /// TargetCodeGenInfo - This class organizes various target-specific
45 /// codegeneration issues, like target-specific attributes, builtins and so
65 /// getABIInfo() - Returns ABI info helper for the target.
74 /// setTargetAttributes - Provides a convenient hook to handle extra
75 /// target-specific attributes for the given global.
79 /// emitTargetMetadata - Provides a convenient hook to handle extra
80 /// target-specific metadata for the given globals.
85 /// Provides a convenient hook to handle extra target-specific globals.
102 /// in 8-bit units. The Itanium ABI defines this as:
111 /// Controls whether __builtin_extend_pointer should sign-extend
112 /// pointers to uint64_t or zero-extend them (the default). Has
114 /// - that have 64-bit pointers, or
115 /// - that cannot address through registers larger than pointers, or
116 /// - that implicitly ignore/truncate the top bits when addressing
121 /// exception-handling purposes. Implements __builtin_dwarf_sp_column.
123 /// Returns -1 if the operation is unsupported by this target.
125 return -1; in getDwarfEHStackPointer()
128 /// Initializes the given DWARF EH register-size table, a char*.
137 /// Performs the code-generation required to convert a return
147 /// Performs the code-generation required to convert the address
163 assert(V->getType()->isFloatingPointTy() && "V should have an FP type."); in testFPKind()
167 /// Corrects the low-level LLVM type for a given constraint and "usual"
193 /// doesReturnSlotInterfereWithArgs - Return true if the target uses an
225 /// convention or the non-variadic convention.
228 /// convention be different from its non-variadic calling
229 /// convention: the non-variadic arguments can be passed in
233 /// non-variadic convention, because C99 states that a call
235 /// function was defined with a non-variadic prototype with
239 /// late 1970s, this is probably an acceptable trade-off.
241 /// particularly x86-64 bends over backwards to make the
245 /// - the conventions are exactly the same, because it does not
248 /// - the conventions are substantively different in how they pass
253 /// for passing additional out-of-band information to a variadic
254 /// function: for example, x86-64 passes the number of SSE
263 /// may need to adjust the debugger-support code in Sema to do the
359 /// a wrapper for the block invoke function with target-specific calling
361 /// block context and block arguments in target-specific way and calls
373 /// \return true if annonymous zero-sized bitfields should be emitted to
380 /// Return the device-side type for the CUDA device builtin surface type.
385 /// Return the device-side type for the CUDA device builtin texture type.
397 /// Emit the device-side copy of the builtin surface type.
404 /// Emit the device-side copy of the builtin texture type.