diff options
author | dfr <dfr@FreeBSD.org> | 2001-10-18 16:20:04 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 2001-10-18 16:20:04 +0000 |
commit | acb4f4cc337f66f275a29d2ae71ab5c3cc90a80c (patch) | |
tree | bcd6bdadee8208c576fffceb54ec823f64132d48 /sys/ia64/include | |
parent | 2b9b30364617025e5c2187bdd827adb490cb1a1e (diff) | |
download | FreeBSD-src-acb4f4cc337f66f275a29d2ae71ab5c3cc90a80c.zip FreeBSD-src-acb4f4cc337f66f275a29d2ae71ab5c3cc90a80c.tar.gz |
Shift the code which packs and unpacks instruction bundles out of DDB
since it is useful for various emulations duties (e.g. unaligned trap
handling).
Diffstat (limited to 'sys/ia64/include')
-rw-r--r-- | sys/ia64/include/db_machdep.h | 5 | ||||
-rw-r--r-- | sys/ia64/include/inst.h | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/sys/ia64/include/db_machdep.h b/sys/ia64/include/db_machdep.h index c419092..caa0c40b 100644 --- a/sys/ia64/include/db_machdep.h +++ b/sys/ia64/include/db_machdep.h @@ -41,10 +41,7 @@ #define DB_NO_AOUT -struct ia64_bundle { - u_int64_t slot[3]; - int template; -}; +struct ia64_bundle; typedef vm_offset_t db_addr_t; /* address - unsigned */ typedef long db_expr_t; /* expression - signed */ diff --git a/sys/ia64/include/inst.h b/sys/ia64/include/inst.h index 5abea43..60ab22f 100644 --- a/sys/ia64/include/inst.h +++ b/sys/ia64/include/inst.h @@ -1165,4 +1165,14 @@ union ia64_instruction { u_int64_t ins; }; +struct ia64_bundle { + u_int64_t slot[3]; + int template; +}; + +extern void ia64_unpack_bundle(u_int64_t low, u_int64_t high, + struct ia64_bundle *bp); +extern void ia64_pack_bundle(u_int64_t *lowp, u_int64_t *highp, + const struct ia64_bundle *bp); + #endif /* _MACHINE_INST_H_ */ |