Mercurial > hg > CbC > old > device
comparison mc-inline.c @ 616:2ba903c8e749
builtin_fabs
builtin_inf()
author | kono |
---|---|
date | Wed, 06 Sep 2006 20:58:03 +0900 |
parents | af6b9ae79583 |
children | 4b4c6b1ea69a |
comparison
equal
deleted
inserted
replaced
615:2dee957ef988 | 616:2ba903c8e749 |
---|---|
926 case DCONST: case FCONST: | 926 case DCONST: case FCONST: |
927 case LCONST: | 927 case LCONST: |
928 case STRING: | 928 case STRING: |
929 case FNAME: | 929 case FNAME: |
930 case FLABEL: | 930 case FLABEL: |
931 case BUILTIN_INF: | |
932 case BUILTIN_INFF: | |
933 case BUILTIN_INFL: | |
931 return e1; | 934 return e1; |
932 case RSTRUCT: | 935 case RSTRUCT: |
933 // list3(RSTRUCT,e,size) | 936 // list3(RSTRUCT,e,size) |
934 return pexpr(e2); | 937 return pexpr(e2); |
935 case LABEL: | 938 case LABEL: |
1105 #if FLOAT_CODE | 1108 #if FLOAT_CODE |
1106 case FASS: case DASS: | 1109 case FASS: case DASS: |
1107 return pdassign(e1); | 1110 return pdassign(e1); |
1108 case DASSOP: case FASSOP: | 1111 case DASSOP: case FASSOP: |
1109 return pdassop(e1); | 1112 return pdassop(e1); |
1113 | |
1114 case BUILTIN_FABS: | |
1115 case BUILTIN_FABSF: | |
1116 case BUILTIN_FABSL: | |
1117 e2 = pexpr(e2); | |
1118 if (is_const(e2)) { | |
1119 if (dcadr(e2) >= 0.0 ) return e2; | |
1120 return pexpr(list2(car(e1)==BUILTIN_FABSF? | |
1121 FMINUS:DMINUS,e2)); | |
1122 } | |
1123 return list2(car(e1),e2); | |
1110 #endif | 1124 #endif |
1111 #if LONGLONG_CODE | 1125 #if LONGLONG_CODE |
1112 case LASS: | 1126 case LASS: |
1113 return plassign(e1); | 1127 return plassign(e1); |
1114 case LASSOP: case LUASSOP: | 1128 case LASSOP: case LUASSOP: |