summaryrefslogtreecommitdiff
path: root/README.txt
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2011-06-17 20:17:05 +0000
committerEric Christopher <echristo@apple.com>2011-06-17 20:17:05 +0000
commit1ace4055f79f304750839d73c46bbcaeb994f1b5 (patch)
tree726c372193dcada5b3959cf02297889904c0e65c /README.txt
parent90467a679a4e45c035b126701a0450857f3c4483 (diff)
Implement mulo<mode>4 for use in signed overflow checking.
Fixes rdar://9219742 and rdar://9218244 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@133284 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'README.txt')
-rw-r--r--README.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/README.txt b/README.txt
index cbeb10cf9..b37c0aecd 100644
--- a/README.txt
+++ b/README.txt
@@ -106,6 +106,15 @@ si_int __mulvsi3(si_int a, si_int b); // a * b
di_int __mulvdi3(di_int a, di_int b); // a * b
ti_int __mulvti3(ti_int a, ti_int b); // a * b
+
+// Integral arithmetic which returns if overflow
+
+si_int __mulosi4(si_int a, si_int b, int* overflow); // a * b, overflow set to one if result not in signed range
+di_int __mulodi4(di_int a, di_int b, int* overflow); // a * b, overflow set to one if result not in signed range
+ti_int __muloti4(ti_int a, ti_int b, int* overflow); // a * b, overflow set to
+ one if result not in signed range
+
+
// Integral comparison: a < b -> 0
// a == b -> 1
// a > b -> 2