mr-frog reminded me: need to invalidate ptrace cache
[unix-history] / usr / src / old / adb / adb.vax / optab.c
CommitLineData
f02effa0 1#ifndef lint
2222b6d9
KB
2static char optab_sccsid[] = "@(#)optab.c 4.5 (Berkeley) %G%";
3#endif
645a3a24 4
2222b6d9
KB
5/*
6 * adb - (read-only) tables for VAX instruction decoding
7 */
8
9#define ADB
f02effa0 10#undef INSTTAB
645a3a24 11
2222b6d9
KB
12/*
13 * Pick up definitions for insttab from the assembler, and also
14 * the arrays ty_NORELOC and ty_nbyte (and soon ty_float);
15 * then, make insttab.
16 */
17#include <sys/types.h>
f02effa0 18#include "instrs.h"
2222b6d9 19#include "assizetab.c"
645a3a24 20
f02effa0
RH
21struct insttab insttab[] = {
22#include "instrs.adb"
2222b6d9 23 0
645a3a24
BJ
24};
25
2222b6d9
KB
26/*
27 * Register names, and floating point immediate constants.
28 * The f.p. constants can be derived from the expression
29 *
30 * fp = (.5 + (n & 7) / 16.0) x (2 ^ (n >> 3))
31 *
32 * or, alternatively,
33 *
34 * union { int i; float f; } u; u.i = (n << 3) | (1 << 14); u.f
35 *
36 * but there are only 64 of them, and this is simpler.
37 */
38char *regname[16] = {
39 "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
40 "r8", "r9", "r10","r11","ap", "fp", "sp", "pc"
645a3a24 41};
2222b6d9
KB
42char *fltimm[64] = {
43 "0.5", "0.5625", "0.625", "0.6875", "0.75", "0.8125", "0.875", "0.9375",
44 "1.0", "1.125", "1.25", "1.375", "1.5", "1.625", "1.75", "1.875",
45 "2.0", "2.25", "2.5", "2.75", "3.0", "3.25", "3.5", "3.75",
46 "4.0", "4.5", "5.0", "5.5", "6.0", "6.5", "7.0", "7.5",
47 "8.0", "9.0", "10.0", "11.0", "12.0", "13.0", "14.0", "15.0",
48 "16.0", "18.0", "20.0", "22.0", "24.0", "26.0", "28.0", "30.0",
49 "32.0", "36.0", "40.0", "44.0", "48.0", "52.0", "56.0", "60.0",
50 "64.0", "72.0", "80.0", "88.0", "96.0", "104.0", "112.0", "120.0"
f02effa0 51};