user: 请将这段汇编代码片段转换成等效的C代码：

```asm
<help_info>:
  endbr64
  sub    $0x8,%rsp
  mov    %rdi,%rsi
  lea    D4(%rip),%rdi
  call   <printf@plt>
  add    $0x8,%rsp
  ret
```

tool_calls: name: retrieve_data
arguments: data_tag: D4
data_type: string

tool: D4: 
*******************************************************
*******    Test Application for SPI driver    *********
*******************************************************
*    This test sends bytes of the last parameter to   *
*    a specific SPI device. The maximum transfer      *
*    bytes are 4096 bytes for bits per word less than *
*    8(including 8), 2048 bytes for bits per word     *
*    between 9 and 16, 1024 bytes for bits per word   *
*    larger than 17(including 17). SPI writes data    *
*    received data from the user into Tx FIFO and     *
*    waits for the data in the Rx FIFO. Once the data *
*    is ready in the Rx FIFO, it is read and sent to  *
*    user. Test is considered successful if data      *
*    received = data sent.                            *
*                                                     *
*    NOTE: As this test is intended to test the SPI   *
*    device,it is always configured in loopback mode  *
*    reasons is that it is dangerous to send ramdom   *
*    data to SPI slave devices.                       *
*                                                     *
*    Options : %s                                      
                  [-D spi_no]  [-s speed]              
                  [-b bits_per_word]                   
                  [-H] [-O] [-C] <value>               
*                                                     *
*    <spi_no> - CSPI Module number in [0, 1, 2]       *
*    <speed> - Max transfer speed                     *
*    <bits_per_word> - bits per word                  *
*    -H - Phase 1 operation of clock                  *
*    -O - Active low polarity of clock                *
*    -C - Active high for chip select                 *
*    <value> - Actual values to be sent               *
*******************************************************



assistant: ```c
void help_info(const char *appname) {
  printf("\n"
         "*******************************************************\n"
         "*******    Test Application for SPI driver    *********\n"
         "*******************************************************\n"
         "*    This test sends bytes of the last parameter to   *\n"
         "*    a specific SPI device. The maximum transfer      *\n"
         "*    bytes are 4096 bytes for bits per word less than *\n"
         "*    8(including 8), 2048 bytes for bits per word     *\n"
         "*    between 9 and 16, 1024 bytes for bits per word   *\n"
         "*    larger than 17(including 17). SPI writes data    *\n"
         "*    received data from the user into Tx FIFO and     *\n"
         "*    waits for the data in the Rx FIFO. Once the data *\n"
         "*    is ready in the Rx FIFO, it is read and sent to  *\n"
         "*    user. Test is considered successful if data      *\n"
         "*    received = data sent.                            *\n"
         "*                                                     *\n"
         "*    NOTE: As this test is intended to test the SPI   *\n"
         "*    device,it is always configured in loopback mode  *\n"
         "*    reasons is that it is dangerous to send ramdom   *\n"
         "*    data to SPI slave devices.                       *\n"
         "*                                                     *\n"
         "*    Options : %s                                      \n"
         "                  [-D spi_no]  [-s speed]              \n"
         "                  [-b bits_per_word]                   \n"
         "                  [-H] [-O] [-C] <value>               \n"
         "*                                                     *\n"
         "*    <spi_no> - CSPI Module number in [0, 1, 2]       *\n"
         "*    <speed> - Max transfer speed                     *\n"
         "*    <bits_per_word> - bits per word                  *\n"
         "*    -H - Phase 1 operation of clock                  *\n"
         "*    -O - Active low polarity of clock                *\n"
         "*    -C - Active high for chip select                 *\n"
         "*    <value> - Actual values to be sent               *\n"
         "*******************************************************\n"
         "\n",
         appname);
}
```