Mercurial > hg > CbC > CbC_gcc
comparison gcc/longlong.h @ 63:b7f97abdc517 gcc-4.6-20100522
update gcc from gcc-4.5.0 to gcc-4.6
author | ryoma <e075725@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 24 May 2010 12:47:05 +0900 |
parents | 77e2b8dfacca |
children | f6334be47118 |
comparison
equal
deleted
inserted
replaced
56:3c8a44c06a95 | 63:b7f97abdc517 |
---|---|
316 : "=r" (count), "=r" (__tmp) : "1" (x)); \ | 316 : "=r" (count), "=r" (__tmp) : "1" (x)); \ |
317 } while (0) | 317 } while (0) |
318 #endif | 318 #endif |
319 | 319 |
320 #if (defined (__i370__) || defined (__s390__) || defined (__mvs__)) && W_TYPE_SIZE == 32 | 320 #if (defined (__i370__) || defined (__s390__) || defined (__mvs__)) && W_TYPE_SIZE == 32 |
321 #if !defined (__zarch__) | |
321 #define smul_ppmm(xh, xl, m0, m1) \ | 322 #define smul_ppmm(xh, xl, m0, m1) \ |
322 do { \ | 323 do { \ |
323 union {DItype __ll; \ | 324 union {DItype __ll; \ |
324 struct {USItype __h, __l;} __i; \ | 325 struct {USItype __h, __l;} __i; \ |
325 } __x; \ | 326 } __x; \ |
337 __asm__ ("dr %0,%2" \ | 338 __asm__ ("dr %0,%2" \ |
338 : "=r" (__x.__ll) \ | 339 : "=r" (__x.__ll) \ |
339 : "0" (__x.__ll), "r" (d)); \ | 340 : "0" (__x.__ll), "r" (d)); \ |
340 (q) = __x.__i.__l; (r) = __x.__i.__h; \ | 341 (q) = __x.__i.__l; (r) = __x.__i.__h; \ |
341 } while (0) | 342 } while (0) |
343 #else | |
344 #define smul_ppmm(xh, xl, m0, m1) \ | |
345 do { \ | |
346 register SItype r0 __asm__ ("0"); \ | |
347 register SItype r1 __asm__ ("1") = m0; \ | |
348 \ | |
349 __asm__ ("mr\t%%r0,%3" \ | |
350 : "=r" (r0), "=r" (r1) \ | |
351 : "r" (r1), "r" (m1)); \ | |
352 (xh) = r1; (xl) = r0; \ | |
353 } while (0) | |
354 #define sdiv_qrnnd(q, r, n1, n0, d) \ | |
355 do { \ | |
356 register SItype r0 __asm__ ("0") = n0; \ | |
357 register SItype r1 __asm__ ("1") = n1; \ | |
358 \ | |
359 __asm__ ("dr\t%%r0,%3" \ | |
360 : "=r" (r0), "=r" (r1) \ | |
361 : "r" (r0), "r" (r1), "r" (d)); \ | |
362 (q) = r0; (r) = r1; \ | |
363 } while (0) | |
364 #endif /* __zarch__ */ | |
342 #endif | 365 #endif |
343 | 366 |
344 #if (defined (__i386__) || defined (__i486__)) && W_TYPE_SIZE == 32 | 367 #if (defined (__i386__) || defined (__i486__)) && W_TYPE_SIZE == 32 |
345 #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ | 368 #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ |
346 __asm__ ("add{l} {%5,%1|%1,%5}\n\tadc{l} {%3,%0|%0,%3}" \ | 369 __asm__ ("add{l} {%5,%1|%1,%5}\n\tadc{l} {%3,%0|%0,%3}" \ |