LCOV - code coverage report
Current view: top level - gcc - sanitizer.def (source / functions) Hit Total Coverage
Test: gcc.info Lines: 182 182 100.0 %
Date: 2020-04-04 11:58:09 Functions: 0 0 -
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : /* This file contains the definitions and documentation for the
       2                 :            :    Address Sanitizer and Thread Sanitizer builtins used in the GNU compiler.
       3                 :            :    Copyright (C) 2012-2020 Free Software Foundation, Inc.
       4                 :            : 
       5                 :            : This file is part of GCC.
       6                 :            : 
       7                 :            : GCC is free software; you can redistribute it and/or modify it under
       8                 :            : the terms of the GNU General Public License as published by the Free
       9                 :            : Software Foundation; either version 3, or (at your option) any later
      10                 :            : version.
      11                 :            : 
      12                 :            : GCC is distributed in the hope that it will be useful, but WITHOUT ANY
      13                 :            : WARRANTY; without even the implied warranty of MERCHANTABILITY or
      14                 :            : FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
      15                 :            : for more details.
      16                 :            : 
      17                 :            : You should have received a copy of the GNU General Public License
      18                 :            : along with GCC; see the file COPYING3.  If not see
      19                 :            : <http://www.gnu.org/licenses/>.  */
      20                 :            : 
      21                 :            : /* Before including this file, you should define a macro:
      22                 :            : 
      23                 :            :      DEF_BUILTIN_STUB(ENUM, NAME)
      24                 :            :      DEF_SANITIZER_BUILTIN (ENUM, NAME, TYPE, ATTRS)
      25                 :            : 
      26                 :            :    See builtins.def for details.
      27                 :            :    The builtins are created by the C-family of FEs in c-family/c-common.c,
      28                 :            :    for other FEs by asan.c.  */
      29                 :            : 
      30                 :            : /* This has to come before all the sanitizer builtins.  */
      31                 :     171092 : DEF_BUILTIN_STUB(BEGIN_SANITIZER_BUILTINS, (const char *)0)
      32                 :            : 
      33                 :            : /* Address Sanitizer */
      34                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_INIT, "__asan_init",
      35                 :            :                       BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
      36                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_VERSION_MISMATCH_CHECK,
      37                 :            :                       "__asan_version_mismatch_check_v8",
      38                 :            :                       BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
      39                 :            : /* Do not reorder the BUILT_IN_ASAN_{REPORT,CHECK}* builtins, e.g. cfgcleanup.c
      40                 :            :    relies on this order.  */
      41                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD1, "__asan_report_load1",
      42                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      43                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD2, "__asan_report_load2",
      44                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      45                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD4, "__asan_report_load4",
      46                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      47                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD8, "__asan_report_load8",
      48                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      49                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD16, "__asan_report_load16",
      50                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      51                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD_N, "__asan_report_load_n",
      52                 :            :                       BT_FN_VOID_PTR_PTRMODE,
      53                 :            :                       ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      54                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE1, "__asan_report_store1",
      55                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      56                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE2, "__asan_report_store2",
      57                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      58                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE4, "__asan_report_store4",
      59                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      60                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE8, "__asan_report_store8",
      61                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      62                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE16, "__asan_report_store16",
      63                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      64                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE_N, "__asan_report_store_n",
      65                 :            :                       BT_FN_VOID_PTR_PTRMODE,
      66                 :            :                       ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST)
      67                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD1_NOABORT,
      68                 :            :                       "__asan_report_load1_noabort",
      69                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      70                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD2_NOABORT,
      71                 :            :                       "__asan_report_load2_noabort",
      72                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      73                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD4_NOABORT,
      74                 :            :                       "__asan_report_load4_noabort",
      75                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      76                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD8_NOABORT,
      77                 :            :                       "__asan_report_load8_noabort",
      78                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      79                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD16_NOABORT,
      80                 :            :                       "__asan_report_load16_noabort",
      81                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      82                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_LOAD_N_NOABORT,
      83                 :            :                       "__asan_report_load_n_noabort",
      84                 :            :                       BT_FN_VOID_PTR_PTRMODE,
      85                 :            :                       ATTR_TMPURE_NOTHROW_LEAF_LIST)
      86                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE1_NOABORT,
      87                 :            :                       "__asan_report_store1_noabort",
      88                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      89                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE2_NOABORT,
      90                 :            :                       "__asan_report_store2_noabort",
      91                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      92                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE4_NOABORT,
      93                 :            :                       "__asan_report_store4_noabort",
      94                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      95                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE8_NOABORT,
      96                 :            :                       "__asan_report_store8_noabort",
      97                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
      98                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE16_NOABORT,
      99                 :            :                       "__asan_report_store16_noabort",
     100                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     101                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REPORT_STORE_N_NOABORT,
     102                 :            :                       "__asan_report_store_n_noabort",
     103                 :            :                       BT_FN_VOID_PTR_PTRMODE,
     104                 :            :                       ATTR_TMPURE_NOTHROW_LEAF_LIST)
     105                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD1, "__asan_load1",
     106                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     107                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD2, "__asan_load2",
     108                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     109                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD4, "__asan_load4",
     110                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     111                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD8, "__asan_load8",
     112                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     113                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD16, "__asan_load16",
     114                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     115                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOADN, "__asan_loadN",
     116                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     117                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE1, "__asan_store1",
     118                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     119                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE2, "__asan_store2",
     120                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     121                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE4, "__asan_store4",
     122                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     123                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE8, "__asan_store8",
     124                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     125                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE16, "__asan_store16",
     126                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     127                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STOREN, "__asan_storeN",
     128                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     129                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD1_NOABORT, "__asan_load1_noabort",
     130                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     131                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD2_NOABORT, "__asan_load2_noabort",
     132                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     133                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD4_NOABORT, "__asan_load4_noabort",
     134                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     135                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD8_NOABORT, "__asan_load8_noabort",
     136                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     137                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOAD16_NOABORT, "__asan_load16_noabort",
     138                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     139                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_LOADN_NOABORT, "__asan_loadN_noabort",
     140                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     141                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE1_NOABORT, "__asan_store1_noabort",
     142                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     143                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE2_NOABORT, "__asan_store2_noabort",
     144                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     145                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE4_NOABORT, "__asan_store4_noabort",
     146                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     147                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE8_NOABORT, "__asan_store8_noabort",
     148                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     149                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STORE16_NOABORT, "__asan_store16_noabort",
     150                 :            :                       BT_FN_VOID_PTR, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     151                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_STOREN_NOABORT, "__asan_storeN_noabort",
     152                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     153                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_REGISTER_GLOBALS,
     154                 :            :                       "__asan_register_globals",
     155                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     156                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_UNREGISTER_GLOBALS,
     157                 :            :                       "__asan_unregister_globals",
     158                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     159                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_HANDLE_NO_RETURN,
     160                 :            :                       "__asan_handle_no_return",
     161                 :            :                       BT_FN_VOID, ATTR_TMPURE_NOTHROW_LEAF_LIST)
     162                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_BEFORE_DYNAMIC_INIT,
     163                 :            :                       "__asan_before_dynamic_init",
     164                 :            :                       BT_FN_VOID_CONST_PTR, ATTR_NOTHROW_LEAF_LIST)
     165                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_AFTER_DYNAMIC_INIT,
     166                 :            :                       "__asan_after_dynamic_init",
     167                 :            :                       BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
     168                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_POISON_STACK_MEMORY,
     169                 :            :                       "__asan_poison_stack_memory",
     170                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     171                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_UNPOISON_STACK_MEMORY,
     172                 :            :                       "__asan_unpoison_stack_memory",
     173                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     174                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_ALLOCA_POISON, "__asan_alloca_poison",
     175                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     176                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_ALLOCAS_UNPOISON, "__asan_allocas_unpoison",
     177                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     178                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_POINTER_COMPARE, "__sanitizer_ptr_cmp",
     179                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     180                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_ASAN_POINTER_SUBTRACT, "__sanitizer_ptr_sub",
     181                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     182                 :            : 
     183                 :            : /* Thread Sanitizer */
     184                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_INIT, "__tsan_init", 
     185                 :            :                       BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
     186                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_FUNC_ENTRY, "__tsan_func_entry",
     187                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     188                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_FUNC_EXIT, "__tsan_func_exit",
     189                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     190                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_VPTR_UPDATE, "__tsan_vptr_update",
     191                 :            :                       BT_FN_VOID_PTR_PTR, ATTR_NOTHROW_LEAF_LIST)
     192                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ1, "__tsan_read1",
     193                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     194                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ2, "__tsan_read2",
     195                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     196                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ4, "__tsan_read4",
     197                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     198                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ8, "__tsan_read8",
     199                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     200                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ16, "__tsan_read16",
     201                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     202                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE1, "__tsan_write1",
     203                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     204                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE2, "__tsan_write2",
     205                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     206                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE4, "__tsan_write4",
     207                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     208                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE8, "__tsan_write8",
     209                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     210                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE16, "__tsan_write16",
     211                 :            :                       BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
     212                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_READ_RANGE, "__tsan_read_range",
     213                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     214                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_WRITE_RANGE, "__tsan_write_range",
     215                 :            :                       BT_FN_VOID_PTR_PTRMODE, ATTR_NOTHROW_LEAF_LIST)
     216                 :            : 
     217                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_LOAD,
     218                 :            :                       "__tsan_atomic8_load",
     219                 :            :                       BT_FN_I1_CONST_VPTR_INT, ATTR_NOTHROW_LEAF_LIST)
     220                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_LOAD,
     221                 :            :                       "__tsan_atomic16_load",
     222                 :            :                       BT_FN_I2_CONST_VPTR_INT, ATTR_NOTHROW_LEAF_LIST)
     223                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_LOAD,
     224                 :            :                       "__tsan_atomic32_load",
     225                 :            :                       BT_FN_I4_CONST_VPTR_INT, ATTR_NOTHROW_LEAF_LIST)
     226                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_LOAD,
     227                 :            :                       "__tsan_atomic64_load",
     228                 :            :                       BT_FN_I8_CONST_VPTR_INT, ATTR_NOTHROW_LEAF_LIST)
     229                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_LOAD,
     230                 :            :                       "__tsan_atomic128_load",
     231                 :            :                       BT_FN_I16_CONST_VPTR_INT, ATTR_NOTHROW_LEAF_LIST)
     232                 :            : 
     233                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_STORE,
     234                 :            :                       "__tsan_atomic8_store",
     235                 :            :                       BT_FN_VOID_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     236                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_STORE,
     237                 :            :                       "__tsan_atomic16_store",
     238                 :            :                       BT_FN_VOID_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     239                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_STORE,
     240                 :            :                       "__tsan_atomic32_store",
     241                 :            :                       BT_FN_VOID_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     242                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_STORE,
     243                 :            :                       "__tsan_atomic64_store",
     244                 :            :                       BT_FN_VOID_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     245                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_STORE,
     246                 :            :                       "__tsan_atomic128_store",
     247                 :            :                       BT_FN_VOID_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     248                 :            : 
     249                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_EXCHANGE,
     250                 :            :                       "__tsan_atomic8_exchange",
     251                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     252                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_EXCHANGE,
     253                 :            :                       "__tsan_atomic16_exchange",
     254                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     255                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_EXCHANGE,
     256                 :            :                       "__tsan_atomic32_exchange",
     257                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     258                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_EXCHANGE,
     259                 :            :                       "__tsan_atomic64_exchange",
     260                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     261                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_EXCHANGE,
     262                 :            :                       "__tsan_atomic128_exchange",
     263                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     264                 :            : 
     265                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_ADD,
     266                 :            :                       "__tsan_atomic8_fetch_add",
     267                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     268                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_ADD,
     269                 :            :                       "__tsan_atomic16_fetch_add",
     270                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     271                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_ADD,
     272                 :            :                       "__tsan_atomic32_fetch_add",
     273                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     274                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_ADD,
     275                 :            :                       "__tsan_atomic64_fetch_add",
     276                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     277                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_ADD,
     278                 :            :                       "__tsan_atomic128_fetch_add",
     279                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     280                 :            : 
     281                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_SUB,
     282                 :            :                       "__tsan_atomic8_fetch_sub",
     283                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     284                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_SUB,
     285                 :            :                       "__tsan_atomic16_fetch_sub",
     286                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     287                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_SUB,
     288                 :            :                       "__tsan_atomic32_fetch_sub",
     289                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     290                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_SUB,
     291                 :            :                       "__tsan_atomic64_fetch_sub",
     292                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     293                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_SUB,
     294                 :            :                       "__tsan_atomic128_fetch_sub",
     295                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     296                 :            : 
     297                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_AND,
     298                 :            :                       "__tsan_atomic8_fetch_and",
     299                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     300                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_AND,
     301                 :            :                       "__tsan_atomic16_fetch_and",
     302                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     303                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_AND,
     304                 :            :                       "__tsan_atomic32_fetch_and",
     305                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     306                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_AND,
     307                 :            :                       "__tsan_atomic64_fetch_and",
     308                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     309                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_AND,
     310                 :            :                       "__tsan_atomic128_fetch_and",
     311                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     312                 :            : 
     313                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_OR,
     314                 :            :                       "__tsan_atomic8_fetch_or",
     315                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     316                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_OR,
     317                 :            :                       "__tsan_atomic16_fetch_or",
     318                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     319                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_OR,
     320                 :            :                       "__tsan_atomic32_fetch_or",
     321                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     322                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_OR,
     323                 :            :                       "__tsan_atomic64_fetch_or",
     324                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     325                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_OR,
     326                 :            :                       "__tsan_atomic128_fetch_or",
     327                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     328                 :            : 
     329                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_XOR,
     330                 :            :                       "__tsan_atomic8_fetch_xor",
     331                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     332                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_XOR,
     333                 :            :                       "__tsan_atomic16_fetch_xor",
     334                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     335                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_XOR,
     336                 :            :                       "__tsan_atomic32_fetch_xor",
     337                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     338                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_XOR,
     339                 :            :                       "__tsan_atomic64_fetch_xor",
     340                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     341                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_XOR,
     342                 :            :                       "__tsan_atomic128_fetch_xor",
     343                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     344                 :            : 
     345                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_FETCH_NAND,
     346                 :            :                       "__tsan_atomic8_fetch_nand",
     347                 :            :                       BT_FN_I1_VPTR_I1_INT, ATTR_NOTHROW_LEAF_LIST)
     348                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_FETCH_NAND,
     349                 :            :                       "__tsan_atomic16_fetch_nand",
     350                 :            :                       BT_FN_I2_VPTR_I2_INT, ATTR_NOTHROW_LEAF_LIST)
     351                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_FETCH_NAND,
     352                 :            :                       "__tsan_atomic32_fetch_nand",
     353                 :            :                       BT_FN_I4_VPTR_I4_INT, ATTR_NOTHROW_LEAF_LIST)
     354                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_FETCH_NAND,
     355                 :            :                       "__tsan_atomic64_fetch_nand",
     356                 :            :                       BT_FN_I8_VPTR_I8_INT, ATTR_NOTHROW_LEAF_LIST)
     357                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_FETCH_NAND,
     358                 :            :                       "__tsan_atomic128_fetch_nand",
     359                 :            :                       BT_FN_I16_VPTR_I16_INT, ATTR_NOTHROW_LEAF_LIST)
     360                 :            : 
     361                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_COMPARE_EXCHANGE_STRONG,
     362                 :            :                       "__tsan_atomic8_compare_exchange_strong",
     363                 :            :                       BT_FN_BOOL_VPTR_PTR_I1_INT_INT,
     364                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     365                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_COMPARE_EXCHANGE_STRONG,
     366                 :            :                       "__tsan_atomic16_compare_exchange_strong",
     367                 :            :                       BT_FN_BOOL_VPTR_PTR_I2_INT_INT,
     368                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     369                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_COMPARE_EXCHANGE_STRONG,
     370                 :            :                       "__tsan_atomic32_compare_exchange_strong",
     371                 :            :                       BT_FN_BOOL_VPTR_PTR_I4_INT_INT,
     372                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     373                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_COMPARE_EXCHANGE_STRONG,
     374                 :            :                       "__tsan_atomic64_compare_exchange_strong",
     375                 :            :                       BT_FN_BOOL_VPTR_PTR_I8_INT_INT,
     376                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     377                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_COMPARE_EXCHANGE_STRONG,
     378                 :            :                       "__tsan_atomic128_compare_exchange_strong",
     379                 :            :                       BT_FN_BOOL_VPTR_PTR_I16_INT_INT,
     380                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     381                 :            : 
     382                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC8_COMPARE_EXCHANGE_WEAK,
     383                 :            :                       "__tsan_atomic8_compare_exchange_weak",
     384                 :            :                       BT_FN_BOOL_VPTR_PTR_I1_INT_INT,
     385                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     386                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC16_COMPARE_EXCHANGE_WEAK,
     387                 :            :                       "__tsan_atomic16_compare_exchange_weak",
     388                 :            :                       BT_FN_BOOL_VPTR_PTR_I2_INT_INT,
     389                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     390                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC32_COMPARE_EXCHANGE_WEAK,
     391                 :            :                       "__tsan_atomic32_compare_exchange_weak",
     392                 :            :                       BT_FN_BOOL_VPTR_PTR_I4_INT_INT,
     393                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     394                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC64_COMPARE_EXCHANGE_WEAK,
     395                 :            :                       "__tsan_atomic64_compare_exchange_weak",
     396                 :            :                       BT_FN_BOOL_VPTR_PTR_I8_INT_INT,
     397                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     398                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC128_COMPARE_EXCHANGE_WEAK,
     399                 :            :                       "__tsan_atomic128_compare_exchange_weak",
     400                 :            :                       BT_FN_BOOL_VPTR_PTR_I16_INT_INT,
     401                 :            :                       ATTR_NOTHROW_LEAF_LIST)
     402                 :            : 
     403                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC_THREAD_FENCE,
     404                 :            :                       "__tsan_atomic_thread_fence",
     405                 :            :                       BT_FN_VOID_INT, ATTR_NOTHROW_LEAF_LIST)
     406                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_TSAN_ATOMIC_SIGNAL_FENCE,
     407                 :            :                       "__tsan_atomic_signal_fence",
     408                 :            :                       BT_FN_VOID_INT, ATTR_NOTHROW_LEAF_LIST)
     409                 :            : 
     410                 :            : /* Undefined Behavior Sanitizer */
     411                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_DIVREM_OVERFLOW,
     412                 :            :                       "__ubsan_handle_divrem_overflow",
     413                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     414                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     415                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_SHIFT_OUT_OF_BOUNDS,
     416                 :            :                       "__ubsan_handle_shift_out_of_bounds",
     417                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     418                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     419                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_BUILTIN_UNREACHABLE,
     420                 :            :                       "__ubsan_handle_builtin_unreachable",
     421                 :            :                       BT_FN_VOID_PTR,
     422                 :            :                       ATTR_COLD_CONST_NORETURN_NOTHROW_LEAF_LIST)
     423                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_MISSING_RETURN,
     424                 :            :                       "__ubsan_handle_missing_return",
     425                 :            :                       BT_FN_VOID_PTR,
     426                 :            :                       ATTR_NORETURN_NOTHROW_LEAF_LIST)
     427                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_VLA_BOUND_NOT_POSITIVE,
     428                 :            :                       "__ubsan_handle_vla_bound_not_positive",
     429                 :            :                       BT_FN_VOID_PTR_PTR,
     430                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     431                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_TYPE_MISMATCH_V1,
     432                 :            :                       "__ubsan_handle_type_mismatch_v1",
     433                 :            :                       BT_FN_VOID_PTR_PTR,
     434                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     435                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_ADD_OVERFLOW,
     436                 :            :                       "__ubsan_handle_add_overflow",
     437                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     438                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     439                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_SUB_OVERFLOW,
     440                 :            :                       "__ubsan_handle_sub_overflow",
     441                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     442                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     443                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_MUL_OVERFLOW,
     444                 :            :                       "__ubsan_handle_mul_overflow",
     445                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     446                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     447                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NEGATE_OVERFLOW,
     448                 :            :                       "__ubsan_handle_negate_overflow",
     449                 :            :                       BT_FN_VOID_PTR_PTR,
     450                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     451                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_LOAD_INVALID_VALUE,
     452                 :            :                       "__ubsan_handle_load_invalid_value",
     453                 :            :                       BT_FN_VOID_PTR_PTR,
     454                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     455                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_POINTER_OVERFLOW,
     456                 :            :                       "__ubsan_handle_pointer_overflow",
     457                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     458                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     459                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_DIVREM_OVERFLOW_ABORT,
     460                 :            :                       "__ubsan_handle_divrem_overflow_abort",
     461                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     462                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     463                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_SHIFT_OUT_OF_BOUNDS_ABORT,
     464                 :            :                       "__ubsan_handle_shift_out_of_bounds_abort",
     465                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     466                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     467                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_VLA_BOUND_NOT_POSITIVE_ABORT,
     468                 :            :                       "__ubsan_handle_vla_bound_not_positive_abort",
     469                 :            :                       BT_FN_VOID_PTR_PTR,
     470                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     471                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_TYPE_MISMATCH_V1_ABORT,
     472                 :            :                       "__ubsan_handle_type_mismatch_v1_abort",
     473                 :            :                       BT_FN_VOID_PTR_PTR,
     474                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     475                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_ADD_OVERFLOW_ABORT,
     476                 :            :                       "__ubsan_handle_add_overflow_abort",
     477                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     478                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     479                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_SUB_OVERFLOW_ABORT,
     480                 :            :                       "__ubsan_handle_sub_overflow_abort",
     481                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     482                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     483                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_MUL_OVERFLOW_ABORT,
     484                 :            :                       "__ubsan_handle_mul_overflow_abort",
     485                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     486                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     487                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NEGATE_OVERFLOW_ABORT,
     488                 :            :                       "__ubsan_handle_negate_overflow_abort",
     489                 :            :                       BT_FN_VOID_PTR_PTR,
     490                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     491                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_LOAD_INVALID_VALUE_ABORT,
     492                 :            :                       "__ubsan_handle_load_invalid_value_abort",
     493                 :            :                       BT_FN_VOID_PTR_PTR,
     494                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     495                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_POINTER_OVERFLOW_ABORT,
     496                 :            :                       "__ubsan_handle_pointer_overflow_abort",
     497                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     498                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     499                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW,
     500                 :            :                       "__ubsan_handle_float_cast_overflow",
     501                 :            :                       BT_FN_VOID_PTR_PTR,
     502                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     503                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW_ABORT,
     504                 :            :                       "__ubsan_handle_float_cast_overflow_abort",
     505                 :            :                       BT_FN_VOID_PTR_PTR,
     506                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     507                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_OUT_OF_BOUNDS,
     508                 :            :                       "__ubsan_handle_out_of_bounds",
     509                 :            :                       BT_FN_VOID_PTR_PTR,
     510                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     511                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_OUT_OF_BOUNDS_ABORT,
     512                 :            :                       "__ubsan_handle_out_of_bounds_abort",
     513                 :            :                       BT_FN_VOID_PTR_PTR,
     514                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     515                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NONNULL_ARG,
     516                 :            :                       "__ubsan_handle_nonnull_arg",
     517                 :            :                       BT_FN_VOID_PTR,
     518                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     519                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NONNULL_ARG_ABORT,
     520                 :            :                       "__ubsan_handle_nonnull_arg_abort",
     521                 :            :                       BT_FN_VOID_PTR,
     522                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     523                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NONNULL_RETURN_V1,
     524                 :            :                       "__ubsan_handle_nonnull_return_v1",
     525                 :            :                       BT_FN_VOID_PTR_PTR,
     526                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     527                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_NONNULL_RETURN_V1_ABORT,
     528                 :            :                       "__ubsan_handle_nonnull_return_v1_abort",
     529                 :            :                       BT_FN_VOID_PTR_PTR,
     530                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     531                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_INVALID_BUILTIN,
     532                 :            :                       "__ubsan_handle_invalid_builtin",
     533                 :            :                       BT_FN_VOID_PTR,
     534                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     535                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_INVALID_BUILTIN_ABORT,
     536                 :            :                       "__ubsan_handle_invalid_builtin_abort",
     537                 :            :                       BT_FN_VOID_PTR,
     538                 :            :                       ATTR_COLD_NORETURN_NOTHROW_LEAF_LIST)
     539                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS,
     540                 :            :                       "__ubsan_handle_dynamic_type_cache_miss",
     541                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     542                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     543                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT,
     544                 :            :                       "__ubsan_handle_dynamic_type_cache_miss_abort",
     545                 :            :                       BT_FN_VOID_PTR_PTR_PTR,
     546                 :            :                       ATTR_COLD_NOTHROW_LEAF_LIST)
     547                 :            : 
     548                 :            : /* Sanitizer coverage */
     549                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_PC,
     550                 :            :                       "__sanitizer_cov_trace_pc",
     551                 :            :                       BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
     552                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMP1,
     553                 :            :                       "__sanitizer_cov_trace_cmp1",
     554                 :            :                       BT_FN_VOID_UINT8_UINT8, ATTR_NOTHROW_LEAF_LIST)
     555                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMP2,
     556                 :            :                       "__sanitizer_cov_trace_cmp2",
     557                 :            :                       BT_FN_VOID_UINT16_UINT16, ATTR_NOTHROW_LEAF_LIST)
     558                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMP4,
     559                 :            :                       "__sanitizer_cov_trace_cmp4",
     560                 :            :                       BT_FN_VOID_UINT32_UINT32, ATTR_NOTHROW_LEAF_LIST)
     561                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMP8,
     562                 :            :                       "__sanitizer_cov_trace_cmp8",
     563                 :            :                       BT_FN_VOID_UINT64_UINT64, ATTR_NOTHROW_LEAF_LIST)
     564                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CONST_CMP1,
     565                 :            :                       "__sanitizer_cov_trace_const_cmp1",
     566                 :            :                       BT_FN_VOID_UINT8_UINT8, ATTR_NOTHROW_LEAF_LIST)
     567                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CONST_CMP2,
     568                 :            :                       "__sanitizer_cov_trace_const_cmp2",
     569                 :            :                       BT_FN_VOID_UINT16_UINT16, ATTR_NOTHROW_LEAF_LIST)
     570                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CONST_CMP4,
     571                 :            :                       "__sanitizer_cov_trace_const_cmp4",
     572                 :            :                       BT_FN_VOID_UINT32_UINT32, ATTR_NOTHROW_LEAF_LIST)
     573                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CONST_CMP8,
     574                 :            :                       "__sanitizer_cov_trace_const_cmp8",
     575                 :            :                       BT_FN_VOID_UINT64_UINT64, ATTR_NOTHROW_LEAF_LIST)
     576                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMPF,
     577                 :            :                       "__sanitizer_cov_trace_cmpf",
     578                 :            :                       BT_FN_VOID_FLOAT_FLOAT, ATTR_NOTHROW_LEAF_LIST)
     579                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_CMPD,
     580                 :            :                       "__sanitizer_cov_trace_cmpd",
     581                 :            :                       BT_FN_VOID_DOUBLE_DOUBLE, ATTR_NOTHROW_LEAF_LIST)
     582                 :     171100 : DEF_SANITIZER_BUILTIN(BUILT_IN_SANITIZER_COV_TRACE_SWITCH,
     583                 :            :                       "__sanitizer_cov_trace_switch",
     584                 :            :                       BT_FN_VOID_UINT64_PTR, ATTR_NOTHROW_LEAF_LIST)
     585                 :            : 
     586                 :            : /* This has to come after all the sanitizer builtins.  */
     587                 :     171092 : DEF_BUILTIN_STUB(END_SANITIZER_BUILTINS, (const char *)0)

Generated by: LCOV version 1.0

LCOV profile is generated on x86_64 machine using following configure options: configure --disable-bootstrap --enable-coverage=opt --enable-languages=c,c++,fortran,go,jit,lto --enable-host-shared. GCC test suite is run with the built compiler.