projects
/
riscv-isa-sim.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
history
|
raw
|
HEAD
temporary undoing of renaming
[riscv-isa-sim.git]
/
softfloat
/
s_add192.c
1
2
#include <stdint.h>
3
#include
"platform.h"
4
#include
"primitives.h"
5
6
struct
uint192
7
softfloat_add192
(
8
uint64_t
a128
,
9
uint64_t
a64
,
10
uint64_t
a0
,
11
uint64_t
b128
,
12
uint64_t
b64
,
13
uint64_t
b0
14
)
15
{
16
struct
uint192 z
;
17
unsigned int
carry64
,
carry128
;
18
19
z
.
v0
=
a0
+
b0
;
20
carry64
= (
z
.
v0
<
a0
);
21
z
.
v64
=
a64
+
b64
;
22
carry128
= (
z
.
v64
<
a64
);
23
z
.
v128
=
a128
+
b128
;
24
z
.
v64
+=
carry64
;
25
carry128
+= (
z
.
v64
<
carry64
);
26
z
.
v128
+=
carry128
;
27
return
z
;
28
29
}
30