Class Triple
Triple to describe a target
Inheritance
Inherited Members
Namespace: Ubiquity.NET.Llvm
Assembly: Ubiquity.NET.Llvm.dll
Syntax
public sealed class Triple : IEquatable<Triple>
Remarks
The term 'Triple' is a bit of a misnomer. At some point in the past it
actually consisted of only three parts, but that has changed over the years
without the name itself changing. The triple is normally represented as a
string of 4 components delimited by '-'. Some of the components have
sub components as part of the content. The canonical form of a triple is:
{Architecture}{SubArchitecture}-{Vendor}-{OS}-{Environment}{ObjectFormat}
A few shorthand variations are allowed and converted to their full normalized form. In particular "cygwin" is a shorthand for the OS-Environment tuple "windows-cygnus" and "mingw" is a shorthand form of "windows-gnu".
In addition to shorthand allowances, the OS component may optionally include a trailing version of the form Maj.Min.Micro. If any of the version number parts are not present, then they default to 0.
For the environment "androideabi" is allowed and normalized to android (including an optional version number).
Constructors
Triple(String) | Initializes a new instance of the Triple class from a triple string |
Properties
ArchitectureType | Gets the Architecture of the triple |
Environment | Gets the environment type for the triple |
EnvironmentVersion | Gets the version number of the environment |
HostTriple | Gets a triple for the host LLVM is built for |
ObjectFormat | Gets the object format type for the triple |
OS | Gets the OS Type for the triple |
SubArchitecture | Gets the Sub Architecture type |
Vendor | Gets the Vendor component of the triple |
Methods
Equals(Object) | Equality test for a triple |
Equals(Triple) | Equality test for a triple |
GetCanonicalArchForSubArch(Triple.ArchType, Triple.SubArchType) | Provides the canonical Architecture form for a given architecture sub architecture pair |
GetCanonicalName(Triple.ArchType) | Retrieves the canonical name for an architecture type |
GetCanonicalName(Triple.EnvironmentType) | Retrieves the canonical name for the environment component of a triple |
GetCanonicalName(Triple.ObjectFormatType) | Retrieves the canonical name for the object component of a triple |
GetCanonicalName(Triple.OSType) | Retrieves the canonical name for the OS component of a triple |
GetCanonicalName(Triple.SubArchType) | Retrieves the canonical name for an architecture sub type |
GetCanonicalName(Triple.VendorType) | Retrieves the canonical name for the vendor component of a triple |
GetDefaultObjectFormat(Triple.ArchType, Triple.OSType) | Gets the default Triple.ObjectFormatType for a given Triple.ArchType and Triple.OSType |
GetHashCode() | Gets a hash code for this Triple |
Normalize(String) | Normalizes a triple string |
ToString() | Retrieves the final string form of the triple |
Operators
Implicit(Triple to String) | Implicitly converts a triple to a string |