Revision 20495218 target-arm/nwfpe/extended_cpdo.c

b/target-arm/nwfpe/extended_cpdo.c
53 53
     switch (fpa11->fType[Fm])
54 54
     {
55 55
        case typeSingle:
56
          rFm = float32_to_floatx80(fpa11->fpreg[Fm].fSingle);
56
          rFm = float32_to_floatx80(fpa11->fpreg[Fm].fSingle, &fpa11->fp_status);
57 57
        break;
58 58

  
59 59
        case typeDouble:
60
          rFm = float64_to_floatx80(fpa11->fpreg[Fm].fDouble);
60
          rFm = float64_to_floatx80(fpa11->fpreg[Fm].fDouble, &fpa11->fp_status);
61 61
        break;
62 62
        
63 63
        case typeExtended:
......
74 74
      switch (fpa11->fType[Fn])
75 75
      {
76 76
        case typeSingle:
77
          rFn = float32_to_floatx80(fpa11->fpreg[Fn].fSingle);
77
          rFn = float32_to_floatx80(fpa11->fpreg[Fn].fSingle, &fpa11->fp_status);
78 78
        break;
79 79

  
80 80
        case typeDouble:
81
          rFn = float64_to_floatx80(fpa11->fpreg[Fn].fDouble);
81
          rFn = float64_to_floatx80(fpa11->fpreg[Fn].fDouble, &fpa11->fp_status);
82 82
        break;
83 83
        
84 84
        case typeExtended:
......
94 94
   {
95 95
      /* dyadic opcodes */
96 96
      case ADF_CODE:
97
         fpa11->fpreg[Fd].fExtended = floatx80_add(rFn,rFm);
97
         fpa11->fpreg[Fd].fExtended = floatx80_add(rFn,rFm, &fpa11->fp_status);
98 98
      break;
99 99

  
100 100
      case MUF_CODE:
101 101
      case FML_CODE:
102
         fpa11->fpreg[Fd].fExtended = floatx80_mul(rFn,rFm);
102
         fpa11->fpreg[Fd].fExtended = floatx80_mul(rFn,rFm, &fpa11->fp_status);
103 103
      break;
104 104

  
105 105
      case SUF_CODE:
106
         fpa11->fpreg[Fd].fExtended = floatx80_sub(rFn,rFm);
106
         fpa11->fpreg[Fd].fExtended = floatx80_sub(rFn,rFm, &fpa11->fp_status);
107 107
      break;
108 108

  
109 109
      case RSF_CODE:
110
         fpa11->fpreg[Fd].fExtended = floatx80_sub(rFm,rFn);
110
         fpa11->fpreg[Fd].fExtended = floatx80_sub(rFm,rFn, &fpa11->fp_status);
111 111
      break;
112 112

  
113 113
      case DVF_CODE:
114 114
      case FDV_CODE:
115
         fpa11->fpreg[Fd].fExtended = floatx80_div(rFn,rFm);
115
         fpa11->fpreg[Fd].fExtended = floatx80_div(rFn,rFm, &fpa11->fp_status);
116 116
      break;
117 117

  
118 118
      case RDF_CODE:
119 119
      case FRD_CODE:
120
         fpa11->fpreg[Fd].fExtended = floatx80_div(rFm,rFn);
120
         fpa11->fpreg[Fd].fExtended = floatx80_div(rFm,rFn, &fpa11->fp_status);
121 121
      break;
122 122

  
123 123
#if 0
......
131 131
#endif
132 132

  
133 133
      case RMF_CODE:
134
         fpa11->fpreg[Fd].fExtended = floatx80_rem(rFn,rFm);
134
         fpa11->fpreg[Fd].fExtended = floatx80_rem(rFn,rFm, &fpa11->fp_status);
135 135
      break;
136 136

  
137 137
#if 0
......
157 157

  
158 158
      case RND_CODE:
159 159
      case URD_CODE:
160
         fpa11->fpreg[Fd].fExtended = floatx80_round_to_int(rFm);
160
         fpa11->fpreg[Fd].fExtended = floatx80_round_to_int(rFm, &fpa11->fp_status);
161 161
      break;
162 162

  
163 163
      case SQT_CODE:
164
         fpa11->fpreg[Fd].fExtended = floatx80_sqrt(rFm);
164
         fpa11->fpreg[Fd].fExtended = floatx80_sqrt(rFm, &fpa11->fp_status);
165 165
      break;
166 166

  
167 167
#if 0

Also available in: Unified diff