View source code
							
							
						
								Display the source code in dmd/target.d from which this
								page was generated on github.
							
						
							Report a bug
							
						
								If you spot a problem with this page, click here to create a
								Bugzilla issue.
							
						
							
								Improve this page
							
							
					
								Quickly fork, edit online, and submit a pull request for this page.
								Requires a signed-in GitHub account. This works well for small changes.
								If you'd like to make larger changes you may want to consider using
								local clone.
							
						dmd.target.Target/target  - multiple declarations
				Variable target
						
					
				Struct Target
Describes a back-end target. At present it is incomplete, but in the future it should grow to contain most or all target machine and target O/S specific information.
						
				struct Target
				;
						
					
				In many cases, calls to sizeof() can't be used directly for getting data type sizes since cross compiling is supported and would end up using the host sizes rather than the target sizes.
Fields
| Name | Type | Description | 
|---|---|---|
| architectureName | const(char)[] | Architecture name | 
| c | TargetC | C ABI | 
| classinfosize | ubyte | size of ClassInfo | 
| cpp | TargetCPP | C++ ABI | 
| dll_ext | const(char)[] | extension for dynamic library files | 
| DoubleProperties | Target | |
| FloatProperties | Target | |
| lib_ext | const(char)[] | extension for static library files | 
| maxStaticDataSize | ulong | maximum size of static data | 
| obj_ext | const(char)[] | extension for object files | 
| objc | TargetObjC | Objective-C ABI | 
| ptrsize | ubyte | size of a pointer in bytes | 
| realalignsize | ubyte | alignment for reals | 
| realpad | ubyte | padding added to the CPU real size to bring it up to realsize | 
| RealProperties | Target | |
| realsize | ubyte | size a real consumes in memory | 
| run_noext | bool | allow -run sources without extensions | 
Properties
| Name | Type | Description | 
|---|---|---|
| isPOSIX[get] | bool | 
Methods
| Name | Description | 
|---|---|
| _init(params) | Initialize the Target | 
| alignsize(type) | Requested target memory alignment size of the given type. | 
| deinitialize() | Deinitializes the global state of the compiler. | 
| fieldalign(type) | Requested target field alignment size of the given type. | 
| getTargetInfo(name, loc) | Get targetInfo by key | 
| isCalleeDestroyingArgs(tf) | |
| isReturnOnStack(tf, needsThis) | Determine return style of function - whether in registers or through a hidden pointer to the caller's stack. | 
| isVectorOpSupported(type, op, t2) | Checks whether the target supports the given operation for vectors. | 
| isVectorTypeSupported(sz, type) | Checks whether the target supports a vector type. | 
| isXmmSupported() | |
| libraryObjectMonitors(fd, fbody) | Returns true if the implementation for object monitors is always defined in the D runtime library (rt/monitor_.d). | 
| objectFormat() | Determine the object format to be used | 
| preferPassByRef(t) | Decides whether an inparameter of the specified POD type is to be
 passed by reference or by value. To be used with-preview=inonly! | 
| setCPU() | Determine the instruction set to be used | 
| stackAlign() | |
| supportsLinkerDirective() | Returns true if the target supports pragma(linkerDirective). | 
| systemLinkage() | Default system linkage for the target. | 
| toArgTypes(t) | Describes how an argument type is passed to a function on target. | 
| va_listType(loc, sc) | Type for the va_listtype for the target; e.g., required for_argptrdeclarations. | 
Inner structs
| Name | Description | 
|---|---|
| FPTypeProperties | Values representing all properties for floating point types | 
Enums
| Name | Description | 
|---|---|
| OS | Bit decoding of the Target.OS | 
Authors
License
					Copyright © 1999-2024 by the D Language Foundation | Page generated by ddox.