summaryrefslogtreecommitdiff
path: root/fonts/utilities/ps2pk/arith.h
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/utilities/ps2pk/arith.h
Initial commit
Diffstat (limited to 'fonts/utilities/ps2pk/arith.h')
-rw-r--r--fonts/utilities/ps2pk/arith.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/fonts/utilities/ps2pk/arith.h b/fonts/utilities/ps2pk/arith.h
new file mode 100644
index 0000000000..fa3e1ecd2c
--- /dev/null
+++ b/fonts/utilities/ps2pk/arith.h
@@ -0,0 +1,70 @@
+/* $XConsortium: arith.h,v 1.2 91/10/10 11:17:49 rws Exp $ */
+/* Copyright International Business Machines, Corp. 1991
+ * All Rights Reserved
+ * Copyright Lexmark International, Inc. 1991
+ * All Rights Reserved
+ *
+ * License to use, copy, modify, and distribute this software and its
+ * documentation for any purpose and without fee is hereby granted,
+ * provided that the above copyright notice appear in all copies and that
+ * both that copyright notice and this permission notice appear in
+ * supporting documentation, and that the name of IBM or Lexmark not be
+ * used in advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission.
+ *
+ * IBM AND LEXMARK PROVIDE THIS SOFTWARE "AS IS", WITHOUT ANY WARRANTIES OF
+ * ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO ANY
+ * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
+ * AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE RISK AS TO THE
+ * QUALITY AND PERFORMANCE OF THE SOFTWARE, INCLUDING ANY DUTY TO SUPPORT
+ * OR MAINTAIN, BELONGS TO THE LICENSEE. SHOULD ANY PORTION OF THE
+ * SOFTWARE PROVE DEFECTIVE, THE LICENSEE (NOT IBM OR LEXMARK) ASSUMES THE
+ * ENTIRE COST OF ALL SERVICING, REPAIR AND CORRECTION. IN NO EVENT SHALL
+ * IBM OR LEXMARK BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
+ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
+ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
+ * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+ * THIS SOFTWARE.
+ */
+/*SHARED*/
+
+/* MAXSHORT may be defined by <limits.h> */
+#ifdef MAXSHORT
+#undef MAXSHORT
+#endif
+
+#define SHORTSIZE (sizeof(SHORT)*8)
+#define INT32SIZE (SHORTSIZE*2)
+#define MAXSHORT ((1<<SHORTSIZE)-1)
+
+/*END SHARED*/
+/*SHARED*/
+
+typedef struct {
+ int32_t high;
+ int32_t low;
+} doublelong;
+
+/*END SHARED*/
+/*SHARED*/
+
+#define DLrightshift(dl,N) { \
+ dl.low = (dl.low >> N) + (((uint32_t) dl.high) << (INT32SIZE - N)); \
+ dl.high >>= N; \
+}
+
+/*END SHARED*/
+/*SHARED*/
+
+#include "types.h"
+
+void DLmult(doublelong *, uint32_t, uint32_t),
+ DLdiv(doublelong *, uint32_t),
+ DLadd(doublelong *, doublelong *),
+ DLsub(doublelong *, doublelong *);
+
+fractpel FPmult(fractpel, fractpel);
+fractpel FPdiv(fractpel, fractpel);
+fractpel FPstarslash(fractpel, fractpel, fractpel);
+
+/*END SHARED*/