// except according to those terms.
use core::hashmap::HashMap;
-use core::libc::c_uint;
+use core::libc::{c_uint, c_ushort};
pub type Opcode = u32;
pub type Bool = c_uint;
use super::{SectionIteratorRef, TargetDataRef, TypeKind, TypeRef, UseRef};
use super::{ValueRef};
- use core::libc::{c_char, c_int, c_longlong, c_uint, c_ulonglong};
+ use core::libc::{c_char, c_int, c_longlong, c_ushort, c_uint, c_ulonglong};
#[link_args = "-Lrustllvm -lrustllvm"]
#[link_name = "rustllvm"]
#[fast_ffi]
pub unsafe fn LLVMConstAllOnes(Ty: TypeRef) -> ValueRef;
#[fast_ffi]
- pub unsafe fn LLVMConstICmp(Pred: c_uint, V1: ValueRef, V2: ValueRef) -> ValueRef;
+ pub unsafe fn LLVMConstICmp(Pred: c_ushort, V1: ValueRef, V2: ValueRef) -> ValueRef;
#[fast_ffi]
- pub unsafe fn LLVMConstFCmp(Pred: c_uint, V1: ValueRef, V2: ValueRef) -> ValueRef;
+ pub unsafe fn LLVMConstFCmp(Pred: c_ushort, V1: ValueRef, V2: ValueRef) -> ValueRef;
/* only for int/vector */
#[fast_ffi]
pub unsafe fn LLVMGetUndef(Ty: TypeRef) -> ValueRef;
pub fn ConstICmp(Pred: IntPredicate, V1: ValueRef, V2: ValueRef) -> ValueRef {
unsafe {
- llvm::LLVMConstICmp(Pred as c_uint, V1, V2)
+ llvm::LLVMConstICmp(Pred as c_ushort, V1, V2)
}
}
pub fn ConstFCmp(Pred: RealPredicate, V1: ValueRef, V2: ValueRef) -> ValueRef {
unsafe {
- llvm::LLVMConstICmp(Pred as c_uint, V1, V2)
+ llvm::LLVMConstFCmp(Pred as c_ushort, V1, V2)
}
}
/* Memory-managed object interface to type handles. */
static aa: bool = 1 <= 2;
static ab: bool = -1 <= 2;
-static ac: bool = 1.0 <= 2;
+static ac: bool = 1.0 <= 2.0;
static ad: bool = 1 < 2;
static ae: bool = -1 < 2;
-static af: bool = 1.0 < 2;
+static af: bool = 1.0 < 2.0;
static ag: bool = 1 != 2;
static ah: bool = -1 != 2;
-static ai: bool = 1.0 != 2;
+static ai: bool = 1.0 != 2.0;
static aj: bool = 2 >= 1;
static ak: bool = 2 >= -2;
-static al: bool = 1.0 >= -2;
+static al: bool = 1.0 >= -2.0;
static am: bool = 2 > 1;
static an: bool = 2 > -2;
-static ao: bool = 1.0 > -2;
+static ao: bool = 1.0 > -2.0;
fn main() {
assert_eq!(a, -1);
assert_eq!(c, -1);
assert_eq!(d, 0);
- assert_approx_eq!(e, -0.3);
+ assert_approx_eq!(e, 0.3);
assert_eq!(e2, -9);
assert_eq!(f, 9);