aboutsummaryrefslogtreecommitdiff
path: root/gnu/gcc2/libgcc/_fixdfsi.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/gcc2/libgcc/_fixdfsi.c')
-rw-r--r--gnu/gcc2/libgcc/_fixdfsi.c31
1 files changed, 0 insertions, 31 deletions
diff --git a/gnu/gcc2/libgcc/_fixdfsi.c b/gnu/gcc2/libgcc/_fixdfsi.c
deleted file mode 100644
index 16cbd4f5678e..000000000000
--- a/gnu/gcc2/libgcc/_fixdfsi.c
+++ /dev/null
@@ -1,31 +0,0 @@
-extern int target_flags;
-
-enum reg_class
-{
- NO_REGS,
- AREG, DREG, CREG, BREG,
- Q_REGS,
- SIREG, DIREG,
- INDEX_REGS,
- GENERAL_REGS,
- FP_TOP_REG, FP_SECOND_REG,
- FLOAT_REGS,
- ALL_REGS, LIM_REG_CLASSES
-};
-extern enum reg_class regclass_map[17 ];
-
-
-extern struct rtx_def *i386_compare_op0, *i386_compare_op1;
-extern struct rtx_def *(*i386_compare_gen)(), *(*i386_compare_gen_eq)();
-extern char *hi_reg_name[];
-extern char *qi_reg_name[];
-extern char *qi_high_reg_name[];
-
-union flt_or_value { float i; float f; };
-union flt_or_int { int i; float f; };
-long int
-__fixdfsi (a)
- double a;
-{
- { auto unsigned short ostatus; auto unsigned short nstatus; auto int ret; auto double tmp; &ostatus; &nstatus; &ret; &tmp; asm volatile ("fnstcw %0" : "=m" (ostatus)); nstatus = ostatus | 0x0c00; asm volatile ("fldcw %0" : : "m" (nstatus)); tmp = a ; asm volatile ("fldl %0" : : "m" (tmp)); asm volatile ("fistpl %0" : "=m" (ret)); asm volatile ("fldcw %0" : : "m" (ostatus)); return ret; } ;
-}