Lines Matching refs:VAR
232 #define TCU_SET_INTERVAL_BOUNDS(DST, VAR, SETLOW, SETHIGH) do \ argument
234 ::tcu::ScopedRoundingMode VAR##_ctx_; \
235 ::tcu::Interval& VAR##_dst_ = (DST); \
236 ::tcu::Interval VAR##_lo_; \
237 ::tcu::Interval VAR##_hi_; \
240 ::tcu::Interval& VAR = VAR##_lo_; \
245 ::tcu::Interval& VAR = VAR##_hi_; \
250 VAR##_dst_ = VAR##_lo_ | VAR##_hi_; \
253 #define TCU_SET_INTERVAL(DST, VAR, BODY) \ argument
254 TCU_SET_INTERVAL_BOUNDS(DST, VAR, BODY, BODY)
261 #define TCU_INTERVAL_APPLY_MONOTONE1(DST, PARAM, ARG, VAR, BODY) do \ argument
263 const ::tcu::Interval& VAR##_arg_ = (ARG); \
264 ::tcu::Interval& VAR##_dst_ = (DST); \
265 ::tcu::Interval VAR##_lo_; \
266 ::tcu::Interval VAR##_hi_; \
267 if (VAR##_arg_.empty()) \
268 VAR##_dst_ = Interval(); \
272 const double PARAM = VAR##_arg_.lo(); \
273 ::tcu::Interval& VAR = VAR##_lo_; \
277 const double PARAM = VAR##_arg_.hi(); \
278 ::tcu::Interval& VAR = VAR##_hi_; \
281 VAR##_dst_ = VAR##_lo_ | VAR##_hi_; \
283 if (VAR##_arg_.hasNaN()) \
284 VAR##_dst_ |= TCU_NAN; \
287 #define TCU_INTERVAL_APPLY_MONOTONE2(DST, P0, A0, P1, A1, VAR, BODY) \ argument
290 TCU_INTERVAL_APPLY_MONOTONE1(tmp2_, P1, A1, VAR, BODY))
292 #define TCU_INTERVAL_APPLY_MONOTONE3(DST, P0, A0, P1, A1, P2, A2, VAR, BODY) \ argument
295 TCU_INTERVAL_APPLY_MONOTONE2(tmp3_, P1, A1, P2, A2, VAR, BODY))