view libc/spec/llvm_libc_ext.td @ 213:25ca0248ac32

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 11 Jul 2021 17:05:31 +0900
parents 2e18cbf3894f
children c4bab56944e8
line wrap: on
line source

def LLVMLibcExt : StandardSpec<"llvm_libc_ext"> {
  HeaderSpec String = HeaderSpec<
      "string.h",
      [], // Macros
      [], // Types
      [], // Enumerations
      [
          FunctionSpec<
              "bzero",
              RetValSpec<VoidType>,
              [ArgSpec<VoidPtr>,
               ArgSpec<SizeTType>]
          >,
      ]
  >;

  HeaderSpec Assert = HeaderSpec<
      "assert.h",
      [], // Macros
      [], // Types
      [], // Enumerations
      [
          FunctionSpec<
              "__assert_fail",
              RetValSpec<NoReturn>,
              [ArgSpec<ConstCharPtr>,
               ArgSpec<ConstCharPtr>,
               ArgSpec<UnsignedType>,
               ArgSpec<ConstCharPtr>,]

          >,
      ]
  >;

  HeaderSpec Errno = HeaderSpec<
      "errno.h",
      [], // Macros
      [], // Types
      [], // Enumerations
      [
          FunctionSpec<
              "__errno_location",
              RetValSpec<IntPtr>,
              [ArgSpec<VoidType>]

          >,
      ]
  >;

  let Headers = [
    String,
    Assert,
    Errno,
  ];
}