mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-22 13:09:50 +08:00
994a57cd28
* builtins.c (expand_builtin_expect): New. (expand_builtin): Call it. * builtins.def (BUILT_IN_EXPECT): New. * c-common.c (c_common_nodes_and_builtins): Declare __builtin_expect. * extend.texi: Document it. * predict.c (expected_value_to_br_prob): New. (find_expected_value): New. * basic-block.h (expected_value_to_br_prob): Declare. * toplev.c (rest_of_compilation): Invoke it. * rtl.h (NOTE_EXPECTED_VALUE): New. (NOTE_INSN_EXPECTED_VALUE): New. * rtl.c (note_insn_name): Update. * print-rtl.c (print_rtx): Reorg NOTE_LINE_NUMBER special cases; handle NOTE_INSN_EXPECTED_VALUE. From-SVN: r33211
89 lines
2.8 KiB
Modula-2
89 lines
2.8 KiB
Modula-2
/* This file contains the definitions and documentation for the
|
|
builtins used in the GNU compiler.
|
|
Copyright (C) 2000 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU CC.
|
|
|
|
GNU CC is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2, or (at your option)
|
|
any later version.
|
|
|
|
GNU CC is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with GNU CC; see the file COPYING. If not, write to
|
|
the Free Software Foundation, 59 Temple Place - Suite 330,
|
|
Boston, MA 02111-1307, USA. */
|
|
|
|
DEF_BUILTIN(BUILT_IN_ALLOCA)
|
|
DEF_BUILTIN(BUILT_IN_ABS)
|
|
DEF_BUILTIN(BUILT_IN_FABS)
|
|
DEF_BUILTIN(BUILT_IN_LABS)
|
|
DEF_BUILTIN(BUILT_IN_FFS)
|
|
DEF_BUILTIN(BUILT_IN_DIV)
|
|
DEF_BUILTIN(BUILT_IN_LDIV)
|
|
DEF_BUILTIN(BUILT_IN_FFLOOR)
|
|
DEF_BUILTIN(BUILT_IN_FCEIL)
|
|
DEF_BUILTIN(BUILT_IN_FMOD)
|
|
DEF_BUILTIN(BUILT_IN_FREM)
|
|
DEF_BUILTIN(BUILT_IN_MEMCPY)
|
|
DEF_BUILTIN(BUILT_IN_MEMCMP)
|
|
DEF_BUILTIN(BUILT_IN_MEMSET)
|
|
DEF_BUILTIN(BUILT_IN_BZERO)
|
|
DEF_BUILTIN(BUILT_IN_BCMP)
|
|
DEF_BUILTIN(BUILT_IN_STRCPY)
|
|
DEF_BUILTIN(BUILT_IN_STRCMP)
|
|
DEF_BUILTIN(BUILT_IN_STRLEN)
|
|
DEF_BUILTIN(BUILT_IN_FSQRT)
|
|
DEF_BUILTIN(BUILT_IN_SIN)
|
|
DEF_BUILTIN(BUILT_IN_COS)
|
|
DEF_BUILTIN(BUILT_IN_GETEXP)
|
|
DEF_BUILTIN(BUILT_IN_GETMAN)
|
|
DEF_BUILTIN(BUILT_IN_SAVEREGS)
|
|
DEF_BUILTIN(BUILT_IN_CLASSIFY_TYPE)
|
|
DEF_BUILTIN(BUILT_IN_NEXT_ARG)
|
|
DEF_BUILTIN(BUILT_IN_ARGS_INFO)
|
|
DEF_BUILTIN(BUILT_IN_CONSTANT_P)
|
|
DEF_BUILTIN(BUILT_IN_FRAME_ADDRESS)
|
|
DEF_BUILTIN(BUILT_IN_RETURN_ADDRESS)
|
|
DEF_BUILTIN(BUILT_IN_AGGREGATE_INCOMING_ADDRESS)
|
|
DEF_BUILTIN(BUILT_IN_APPLY_ARGS)
|
|
DEF_BUILTIN(BUILT_IN_APPLY)
|
|
DEF_BUILTIN(BUILT_IN_RETURN)
|
|
DEF_BUILTIN(BUILT_IN_SETJMP)
|
|
DEF_BUILTIN(BUILT_IN_LONGJMP)
|
|
DEF_BUILTIN(BUILT_IN_TRAP)
|
|
|
|
/* ISO C99 floating point unordered comparisons. */
|
|
DEF_BUILTIN(BUILT_IN_ISGREATER)
|
|
DEF_BUILTIN(BUILT_IN_ISGREATEREQUAL)
|
|
DEF_BUILTIN(BUILT_IN_ISLESS)
|
|
DEF_BUILTIN(BUILT_IN_ISLESSEQUAL)
|
|
DEF_BUILTIN(BUILT_IN_ISLESSGREATER)
|
|
DEF_BUILTIN(BUILT_IN_ISUNORDERED)
|
|
|
|
/* Various hooks for the DWARF 2 __throw routine. */
|
|
DEF_BUILTIN(BUILT_IN_UNWIND_INIT)
|
|
DEF_BUILTIN(BUILT_IN_DWARF_CFA)
|
|
DEF_BUILTIN(BUILT_IN_DWARF_FP_REGNUM)
|
|
DEF_BUILTIN(BUILT_IN_INIT_DWARF_REG_SIZES)
|
|
DEF_BUILTIN(BUILT_IN_FROB_RETURN_ADDR)
|
|
DEF_BUILTIN(BUILT_IN_EXTRACT_RETURN_ADDR)
|
|
DEF_BUILTIN(BUILT_IN_EH_RETURN)
|
|
|
|
DEF_BUILTIN(BUILT_IN_VARARGS_START)
|
|
DEF_BUILTIN(BUILT_IN_STDARG_START)
|
|
DEF_BUILTIN(BUILT_IN_VA_END)
|
|
DEF_BUILTIN(BUILT_IN_VA_COPY)
|
|
DEF_BUILTIN(BUILT_IN_EXPECT)
|
|
|
|
/* C++ extensions */
|
|
DEF_BUILTIN(BUILT_IN_NEW)
|
|
DEF_BUILTIN(BUILT_IN_VEC_NEW)
|
|
DEF_BUILTIN(BUILT_IN_DELETE)
|
|
DEF_BUILTIN(BUILT_IN_VEC_DELETE)
|