1  /* Test BTF generation for 64 bits enums.  */
       2  
       3  /* { dg-do compile } */
       4  /* { dg-options "-O0 -gbtf -dA" } */
       5  
       6  /* { dg-final { scan-assembler-times "\[\t \].size\[\t \]_?myenum1,\[\t \]8" 1 } } */
       7  /* { dg-final { scan-assembler-times "\[\t \].size\[\t \]_?myenum2,\[\t \]8" 1 } } */
       8  /* { dg-final { scan-assembler-times "\[\t \].size\[\t \]_?myenum3,\[\t \]8" 1 } } */
       9  /* { dg-final { scan-assembler-times "\[\t \]0x13000003\[\t \]+\[^\n\]*btt_info" 2 } } */
      10  /* { dg-final { scan-assembler-times "\[\t \]0x93000003\[\t \]+\[^\n\]*btt_info" 1 } } */
      11  /* { dg-final { scan-assembler-times "\[\t \]0xffffffaa\[\t \]+\[^\n\]*bte_value_lo32" 2 } } */
      12  /* { dg-final { scan-assembler-times "\[\t \]0xff\[\t \]+\[^\n\]*bte_value_hi32" 3 } } */
      13  /* { dg-final { scan-assembler-times "ascii \"B1.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      14  /* { dg-final { scan-assembler-times "ascii \"B2.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      15  /* { dg-final { scan-assembler-times "ascii \"B3.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      16  /* { dg-final { scan-assembler-times "ascii \"C1.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      17  /* { dg-final { scan-assembler-times "ascii \"C2.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      18  /* { dg-final { scan-assembler-times "ascii \"C3.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      19  /* { dg-final { scan-assembler-times "ascii \"D1.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      20  /* { dg-final { scan-assembler-times "ascii \"D2.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      21  /* { dg-final { scan-assembler-times "ascii \"D3.0\"\[\t \]+\[^\n\]*btf_string" 1 } } */
      22  /* { dg-final { scan-assembler-times "bte_value_lo32" 9 } } */
      23  /* { dg-final { scan-assembler-times "bte_value_hi32" 9 } } */
      24  
      25  enum default_enum
      26  {
      27    B1 = 0xffffffffaa,
      28    B2 = 0xbbbbbbbb,
      29    B3 = 0xaabbccdd,
      30  } myenum1 = B1;
      31  
      32  enum explicit_unsigned
      33  {
      34    C1 = 0xffffffffbbUL,
      35    C2 = 0xbbbbbbbb,
      36    C3 = 0xaabbccdd,
      37  } myenum2 = C1;
      38  
      39  enum signed64
      40  {
      41    D1 = 0xffffffffaa,
      42    D2 = 0xbbbbbbbb,
      43    D3 = -0x1,
      44  } myenum3 = D1;