1  /* { dg-do compile } */
       2  /* { dg-options "-mabi=64 -march=mips64r6" } */
       3  /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } } */
       4  
       5  typedef unsigned __int128 u128;
       6  typedef unsigned long long u64;
       7  
       8  u128
       9  test (u64 a, u64 b)
      10  {
      11    return (u128)a * (u128)b;
      12  }
      13  
      14  /* { dg-final { scan-assembler-not "__multi3" } } */
      15  /* { dg-final { scan-assembler "dmul" } } */
      16  /* { dg-final { scan-assembler "dmuhu" } } */