(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
riscv/
cmo-zicbom-1.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-march=rv64gc_zicbom -mabi=lp64" } */
       3  
       4  int var;
       5  
       6  void foo1()
       7  {
       8      __builtin_riscv_zicbom_cbo_clean(0);
       9      __builtin_riscv_zicbom_cbo_clean(&var);
      10      __builtin_riscv_zicbom_cbo_clean((void*)0x111);
      11  }
      12  
      13  void foo2()
      14  {
      15      __builtin_riscv_zicbom_cbo_flush(0);
      16      __builtin_riscv_zicbom_cbo_flush(&var);
      17      __builtin_riscv_zicbom_cbo_flush((void*)0x111);
      18  }
      19  
      20  void foo3()
      21  {
      22      __builtin_riscv_zicbom_cbo_inval(0);
      23      __builtin_riscv_zicbom_cbo_inval(&var);
      24      __builtin_riscv_zicbom_cbo_inval((void*)0x111);
      25  }
      26  
      27  /* { dg-final { scan-assembler-times "cbo.clean" 3 } } */
      28  /* { dg-final { scan-assembler-times "cbo.flush" 3 } } */
      29  /* { dg-final { scan-assembler-times "cbo.inval" 3 } } */