From ec38da42c8d563d639579d77b883e9ed1cbe2582 Mon Sep 17 00:00:00 2001
From: Nick Lewycky The first class types are perhaps the most
important. Values of these types are the only ones which can be produced by
- instructions, passed as arguments, or used as operands to instructions.
+
-
The integer type is a very simple type that simply specifies an arbitrary + bit width for the integer type desired. Any bit width from 1 bit to + 223-1 (about 8 million) can be specified.
+ ++ iN ++ +
The number of bits the integer will occupy is specified by the N + value.
+ +i1 | +a single-bit integer. | +
i32 | +a 32-bit integer. | +
i1942652 | +a really big integer of over 1 million bits. | +
Note that the code generator does not yet support large integer types to be + used as function return types. The specific limit on how large a return type + the code generator can currently handle is target-dependent; currently it's + often 64 bits for 32-bit targets and 128 bits for 64-bit targets.
+ +The real power in LLVM comes from the derived types in the system. This is what allows a programmer to represent arrays, functions, pointers, and other - useful types. Note that these derived types may be recursive: For example, - it is possible to have a two dimensional array.
- - - - - - -The integer type is a very simple derived type that simply specifies an - arbitrary bit width for the integer type desired. Any bit width from 1 bit to - 2^23-1 (about 8 million) can be specified.
- -- iN -- -
The number of bits the integer will occupy is specified by the N - value.
- -i1 | -a single-bit integer. | -
i32 | -a 32-bit integer. | -
i1942652 | -a really big integer of over 1 million bits. | -
Note that the code generator does not yet support large integer types to be - used as function return types. The specific limit on how large a return type - the code generator can currently handle is target-dependent; currently it's - often 64 bits for 32-bit targets and 128 bits for 64-bit targets.
+ useful types. Each of these types contain one or more element types which + may be a primitive type, or another derived type. For example, it is + possible to have a two dimensional array, using an array as the element type + of another array.The 'icmp' compares op1 and op2 according to the condition code given as cond. The comparison performed always yields - either an i1 or vector of i1 + either an i1 or vector of i1 result, as follows:
If the operands are floating point scalars, then the result type is a boolean -(i1).
+(i1).If the operands are floating point vectors, then the result type is a vector of boolean with the same number of elements as the operands being @@ -4810,7 +4812,7 @@ entry:
The 'fcmp' instruction compares op1 and op2 according to the condition code given as cond. If the operands are vectors, then the vectors are compared element by element. Each comparison - performed always yields an i1 result, as + performed always yields an i1 result, as follows: