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: