Home | History | Annotate | Line # | Download | only in lint1
op_shl_lp64.c revision 1.1
      1  1.1  rillig /*	$NetBSD: op_shl_lp64.c,v 1.1 2021/07/04 20:22:31 rillig Exp $	*/
      2  1.1  rillig # 3 "op_shl_lp64.c"
      3  1.1  rillig 
      4  1.1  rillig /*
      5  1.1  rillig  * Test overflow on shl of 128-bit integers, as seen in
      6  1.1  rillig  * ecp_nistp256.c(296).
      7  1.1  rillig  */
      8  1.1  rillig 
      9  1.1  rillig /* lint1-only-if lp64 */
     10  1.1  rillig 
     11  1.1  rillig const __uint128_t zero105 =
     12  1.1  rillig     /* FIXME: 105 is ok for __uint128_t */
     13  1.1  rillig     /* expect+1: warning: shift amount 105 is greater than bit-size 32 of 'int' [122] */
     14  1.1  rillig     (((__uint128_t)1) << 105)
     15  1.1  rillig     /* FIXME: 41 is ok for __uint128_t */
     16  1.1  rillig     /* expect+1: warning: shift amount 41 is greater than bit-size 32 of 'int' [122] */
     17  1.1  rillig     - (((__uint128_t)1) << 41)
     18  1.1  rillig     - (((__uint128_t)1) << 9);
     19