@@ -2079,6 +2079,61 @@ module J2ME {
2079
2079
export function throwUnwind7 ( pc : number , nextPC : number = pc + 3 ) {
2080
2080
throwUnwind ( pc , nextPC , 7 ) ;
2081
2081
}
2082
+
2083
+ export function fadd ( a : number , b : number ) : number {
2084
+ aliasedI32 [ 0 ] = a ;
2085
+ aliasedI32 [ 1 ] = b ;
2086
+ aliasedF32 [ 2 ] = aliasedF32 [ 0 ] + aliasedF32 [ 1 ] ;
2087
+ return aliasedI32 [ 2 ] ;
2088
+ }
2089
+
2090
+ export function fsub ( a : number , b : number ) : number {
2091
+ aliasedI32 [ 0 ] = a ;
2092
+ aliasedI32 [ 1 ] = b ;
2093
+ aliasedF32 [ 2 ] = aliasedF32 [ 0 ] - aliasedF32 [ 1 ] ;
2094
+ return aliasedI32 [ 2 ] ;
2095
+ }
2096
+
2097
+ export function fmul ( a : number , b : number ) : number {
2098
+ aliasedI32 [ 0 ] = a ;
2099
+ aliasedI32 [ 1 ] = b ;
2100
+ aliasedF32 [ 2 ] = aliasedF32 [ 0 ] * aliasedF32 [ 1 ] ;
2101
+ return aliasedI32 [ 2 ] ;
2102
+ }
2103
+
2104
+ export function fdiv ( a : number , b : number ) : number {
2105
+ aliasedI32 [ 0 ] = a ;
2106
+ aliasedI32 [ 1 ] = b ;
2107
+ aliasedF32 [ 2 ] = Math . fround ( aliasedF32 [ 0 ] / aliasedF32 [ 1 ] ) ;
2108
+ return aliasedI32 [ 2 ] ;
2109
+ }
2110
+
2111
+ export function frem ( a : number , b : number ) : number {
2112
+ aliasedI32 [ 0 ] = a ;
2113
+ aliasedI32 [ 1 ] = b ;
2114
+ aliasedF32 [ 2 ] = Math . fround ( aliasedF32 [ 0 ] % aliasedF32 [ 1 ] ) ;
2115
+ return aliasedI32 [ 2 ] ;
2116
+ }
2117
+
2118
+ export function f2i ( a : number ) {
2119
+ if ( a > Constants . INT_MAX ) {
2120
+ return Constants . INT_MAX ;
2121
+ } else if ( a < Constants . INT_MIN ) {
2122
+ return Constants . INT_MIN ;
2123
+ } else {
2124
+ return a | 0 ;
2125
+ }
2126
+ }
2127
+
2128
+ export function f2l ( a : number ) {
2129
+ if ( a > Constants . INT_MAX ) {
2130
+ return Constants . INT_MAX ;
2131
+ } else if ( a < Constants . INT_MIN ) {
2132
+ return Constants . INT_MIN ;
2133
+ } else {
2134
+ return a | 0 ;
2135
+ }
2136
+ }
2082
2137
}
2083
2138
2084
2139
var Runtime = J2ME . Runtime ;
@@ -2139,37 +2194,10 @@ var TN = J2ME.throwNegativeArraySizeException;
2139
2194
var PE = J2ME . preempt ;
2140
2195
var PS = 0 ; // Preemption samples.
2141
2196
2142
- function fadd ( a : number , b : number ) : number {
2143
- aliasedI32 [ 0 ] = a ;
2144
- aliasedI32 [ 1 ] = b ;
2145
- aliasedF32 [ 2 ] = aliasedF32 [ 0 ] + aliasedF32 [ 1 ] ;
2146
- return aliasedI32 [ 2 ] ;
2147
- }
2148
-
2149
- function fsub ( a : number , b : number ) : number {
2150
- aliasedI32 [ 0 ] = a ;
2151
- aliasedI32 [ 1 ] = b ;
2152
- aliasedF32 [ 2 ] = aliasedF32 [ 0 ] - aliasedF32 [ 1 ] ;
2153
- return aliasedI32 [ 2 ] ;
2154
- }
2155
-
2156
- function fmul ( a : number , b : number ) : number {
2157
- aliasedI32 [ 0 ] = a ;
2158
- aliasedI32 [ 1 ] = b ;
2159
- aliasedF32 [ 2 ] = aliasedF32 [ 0 ] * aliasedF32 [ 1 ] ;
2160
- return aliasedI32 [ 2 ] ;
2161
- }
2162
-
2163
- function fdiv ( a : number , b : number ) : number {
2164
- aliasedI32 [ 0 ] = a ;
2165
- aliasedI32 [ 1 ] = b ;
2166
- aliasedF32 [ 2 ] = Math . fround ( aliasedF32 [ 0 ] / aliasedF32 [ 1 ] ) ;
2167
- return aliasedI32 [ 2 ] ;
2168
- }
2197
+ var fadd = J2ME . fadd ;
2198
+ var fsub = J2ME . fsub ;
2199
+ var fmul = J2ME . fmul ;
2200
+ var fdiv = J2ME . fdiv ;
2201
+ var frem = J2ME . frem ;
2169
2202
2170
- function frem ( a : number , b : number ) : number {
2171
- aliasedI32 [ 0 ] = a ;
2172
- aliasedI32 [ 1 ] = b ;
2173
- aliasedF32 [ 2 ] = Math . fround ( aliasedF32 [ 0 ] % aliasedF32 [ 1 ] ) ;
2174
- return aliasedI32 [ 2 ] ;
2175
- }
2203
+ var f2i = J2ME . f2i ;
0 commit comments