Print this page
new smatch


  36 static void * iptr_2_vptr(void) { return (void *)((int*)128); }
  37 static int * int_2_iptr(void) { return (int *)123; }
  38 static int * uint_2_iptr(void) { return (int *)123U; }
  39 static int * long_2_iptr(void) { return (int *)123L; }
  40 static int * ulong_2_iptr(void) { return (int *)123UL; }
  41 static int * vptr_2_iptr(void) { return (int *)((void*)123); }
  42 static float int_2_float(void) { return (float)123; }
  43 static float uint_2_float(void) { return (float)123U; }
  44 static float long_2_float(void) { return (float)123L; }
  45 static float ulong_2_float(void) { return (float)123UL; }
  46 static float double_2_float(void) { return (float)1.123L; }
  47 static double int_2_double(void) { return (double)123; }
  48 static double uint_2_double(void) { return (double)123U; }
  49 static double long_2_double(void) { return (double)123L; }
  50 static double ulong_2_double(void) { return (double)123UL; }
  51 static double float_2_double(void) { return (double)1.123F; }
  52 
  53 /*
  54  * check-name: cast-constants.c
  55  * check-command: test-linearize -m64 $file

  56  *
  57  * check-output-start
  58 uint_2_int:
  59 .L0:
  60         <entry-point>
  61         ret.32      $123
  62 
  63 
  64 long_2_int:
  65 .L2:
  66         <entry-point>
  67         ret.32      $123
  68 
  69 
  70 ulong_2_int:
  71 .L4:
  72         <entry-point>
  73         ret.32      $123
  74 
  75 


 269 .L70:
 270         <entry-point>
 271         ret.64      $123
 272 
 273 
 274 ulong_2_iptr:
 275 .L72:
 276         <entry-point>
 277         ret.64      $123
 278 
 279 
 280 vptr_2_iptr:
 281 .L74:
 282         <entry-point>
 283         ret.64      $123
 284 
 285 
 286 int_2_float:
 287 .L76:
 288         <entry-point>
 289         set.32      %r39 <- 123.000000
 290         ret.32      %r39
 291 
 292 
 293 uint_2_float:
 294 .L78:
 295         <entry-point>
 296         set.32      %r41 <- 123.000000
 297         ret.32      %r41
 298 
 299 
 300 long_2_float:
 301 .L80:
 302         <entry-point>
 303         set.32      %r43 <- 123.000000
 304         ret.32      %r43
 305 
 306 
 307 ulong_2_float:
 308 .L82:
 309         <entry-point>
 310         set.32      %r45 <- 123.000000
 311         ret.32      %r45
 312 
 313 
 314 double_2_float:
 315 .L84:
 316         <entry-point>
 317         set.32      %r47 <- 1.123000
 318         ret.32      %r47
 319 
 320 
 321 int_2_double:
 322 .L86:
 323         <entry-point>
 324         set.64      %r49 <- 123.000000
 325         ret.64      %r49
 326 
 327 
 328 uint_2_double:
 329 .L88:
 330         <entry-point>
 331         set.64      %r51 <- 123.000000
 332         ret.64      %r51
 333 
 334 
 335 long_2_double:
 336 .L90:
 337         <entry-point>
 338         set.64      %r53 <- 123.000000
 339         ret.64      %r53
 340 
 341 
 342 ulong_2_double:
 343 .L92:
 344         <entry-point>
 345         set.64      %r55 <- 123.000000
 346         ret.64      %r55
 347 
 348 
 349 float_2_double:
 350 .L94:
 351         <entry-point>
 352         set.64      %r57 <- 1.123000
 353         ret.64      %r57
 354 
 355 
 356  * check-output-end
 357  */


  36 static void * iptr_2_vptr(void) { return (void *)((int*)128); }
  37 static int * int_2_iptr(void) { return (int *)123; }
  38 static int * uint_2_iptr(void) { return (int *)123U; }
  39 static int * long_2_iptr(void) { return (int *)123L; }
  40 static int * ulong_2_iptr(void) { return (int *)123UL; }
  41 static int * vptr_2_iptr(void) { return (int *)((void*)123); }
  42 static float int_2_float(void) { return (float)123; }
  43 static float uint_2_float(void) { return (float)123U; }
  44 static float long_2_float(void) { return (float)123L; }
  45 static float ulong_2_float(void) { return (float)123UL; }
  46 static float double_2_float(void) { return (float)1.123L; }
  47 static double int_2_double(void) { return (double)123; }
  48 static double uint_2_double(void) { return (double)123U; }
  49 static double long_2_double(void) { return (double)123L; }
  50 static double ulong_2_double(void) { return (double)123UL; }
  51 static double float_2_double(void) { return (double)1.123F; }
  52 
  53 /*
  54  * check-name: cast-constants.c
  55  * check-command: test-linearize -m64 $file
  56  * check-assert: sizeof(void *) == 8 && sizeof(long) == 8 && sizeof(double) == 8
  57  *
  58  * check-output-start
  59 uint_2_int:
  60 .L0:
  61         <entry-point>
  62         ret.32      $123
  63 
  64 
  65 long_2_int:
  66 .L2:
  67         <entry-point>
  68         ret.32      $123
  69 
  70 
  71 ulong_2_int:
  72 .L4:
  73         <entry-point>
  74         ret.32      $123
  75 
  76 


 270 .L70:
 271         <entry-point>
 272         ret.64      $123
 273 
 274 
 275 ulong_2_iptr:
 276 .L72:
 277         <entry-point>
 278         ret.64      $123
 279 
 280 
 281 vptr_2_iptr:
 282 .L74:
 283         <entry-point>
 284         ret.64      $123
 285 
 286 
 287 int_2_float:
 288 .L76:
 289         <entry-point>
 290         setfval.32  %r39 <- 1.230000e+02
 291         ret.32      %r39
 292 
 293 
 294 uint_2_float:
 295 .L78:
 296         <entry-point>
 297         setfval.32  %r41 <- 1.230000e+02
 298         ret.32      %r41
 299 
 300 
 301 long_2_float:
 302 .L80:
 303         <entry-point>
 304         setfval.32  %r43 <- 1.230000e+02
 305         ret.32      %r43
 306 
 307 
 308 ulong_2_float:
 309 .L82:
 310         <entry-point>
 311         setfval.32  %r45 <- 1.230000e+02
 312         ret.32      %r45
 313 
 314 
 315 double_2_float:
 316 .L84:
 317         <entry-point>
 318         setfval.32  %r47 <- 1.123000e+00
 319         ret.32      %r47
 320 
 321 
 322 int_2_double:
 323 .L86:
 324         <entry-point>
 325         setfval.64  %r49 <- 1.230000e+02
 326         ret.64      %r49
 327 
 328 
 329 uint_2_double:
 330 .L88:
 331         <entry-point>
 332         setfval.64  %r51 <- 1.230000e+02
 333         ret.64      %r51
 334 
 335 
 336 long_2_double:
 337 .L90:
 338         <entry-point>
 339         setfval.64  %r53 <- 1.230000e+02
 340         ret.64      %r53
 341 
 342 
 343 ulong_2_double:
 344 .L92:
 345         <entry-point>
 346         setfval.64  %r55 <- 1.230000e+02
 347         ret.64      %r55
 348 
 349 
 350 float_2_double:
 351 .L94:
 352         <entry-point>
 353         setfval.64  %r57 <- 1.123000e+00
 354         ret.64      %r57
 355 
 356 
 357  * check-output-end
 358  */