1 int and_0(int a)
   2 {
   3         return a && 0;
   4 }
   5 
   6 int and_1(int a)
   7 {
   8         return a && 1;
   9 }
  10 
  11 int or_0(int a)
  12 {
  13         return a || 0;
  14 }
  15 
  16 int or_1(int a)
  17 {
  18         return a || 1;
  19 }
  20 
  21 /*
  22  * check-name: bool-simplify
  23  * check-command: test-linearize -Wno-decl $file
  24  *
  25  * check-output-start
  26 and_0:
  27 .L0:
  28         <entry-point>
  29         ret.32      $0
  30 
  31 
  32 and_1:
  33 .L2:
  34         <entry-point>
  35         setne.1     %r8 <- %arg1, $0
  36         cast.32     %r11 <- (1) %r8
  37         ret.32      %r11
  38 
  39 
  40 or_0:
  41 .L4:
  42         <entry-point>
  43         setne.1     %r14 <- %arg1, $0
  44         cast.32     %r17 <- (1) %r14
  45         ret.32      %r17
  46 
  47 
  48 or_1:
  49 .L6:
  50         <entry-point>
  51         ret.32      $1
  52 
  53 
  54  * check-output-end
  55  */