mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Add the new builder arthmetic instructions to llvm-c and ocaml.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97372 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -1095,6 +1095,12 @@ CAMLprim LLVMValueRef llvm_build_nsw_add(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
return LLVMBuildNSWAdd(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nuw_add(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNUWAdd(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_fadd(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
@@ -1107,6 +1113,18 @@ CAMLprim LLVMValueRef llvm_build_sub(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
return LLVMBuildSub(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nsw_sub(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNSWSub(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nuw_sub(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNUWSub(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_fsub(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
@@ -1119,6 +1137,18 @@ CAMLprim LLVMValueRef llvm_build_mul(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
return LLVMBuildMul(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nsw_mul(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNSWMul(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nuw_mul(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNUWMul(Builder_val(B), LHS, RHS, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_fmul(LLVMValueRef LHS, LLVMValueRef RHS,
|
||||
value Name, value B) {
|
||||
@@ -1209,6 +1239,24 @@ CAMLprim LLVMValueRef llvm_build_neg(LLVMValueRef X,
|
||||
return LLVMBuildNeg(Builder_val(B), X, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nsw_neg(LLVMValueRef X,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNSWNeg(Builder_val(B), X, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_nuw_neg(LLVMValueRef X,
|
||||
value Name, value B) {
|
||||
return LLVMBuildNUWNeg(Builder_val(B), X, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_fneg(LLVMValueRef X,
|
||||
value Name, value B) {
|
||||
return LLVMBuildFNeg(Builder_val(B), X, String_val(Name));
|
||||
}
|
||||
|
||||
/* llvalue -> string -> llbuilder -> llvalue */
|
||||
CAMLprim LLVMValueRef llvm_build_not(LLVMValueRef X,
|
||||
value Name, value B) {
|
||||
|
Reference in New Issue
Block a user