Annotation of gcc/basic-block.h, revision 1.1.1.1

1.1       root        1: /* Define control and data flow tables, and regsets.
                      2:    Copyright (C) 1987 Free Software Foundation, Inc.
                      3: 
                      4: This file is part of GNU CC.
                      5: 
                      6: GNU CC is free software; you can redistribute it and/or modify
                      7: it under the terms of the GNU General Public License as published by
                      8: the Free Software Foundation; either version 2, or (at your option)
                      9: any later version.
                     10: 
                     11: GNU CC is distributed in the hope that it will be useful,
                     12: but WITHOUT ANY WARRANTY; without even the implied warranty of
                     13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     14: GNU General Public License for more details.
                     15: 
                     16: You should have received a copy of the GNU General Public License
                     17: along with GNU CC; see the file COPYING.  If not, write to
                     18: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
                     19: 
                     20: 
                     21: /* Define the type for a pointer to a set with a bit for each
                     22:    (hard or pseudo) register.  */
                     23: 
                     24: typedef long *regset;
                     25: 
                     26: /* Size of a regset for the current function,
                     27:    in (1) bytes and (2) elements.  */
                     28: 
                     29: extern int regset_bytes;
                     30: extern int regset_size;
                     31: 
                     32: /* Number of bits in each actual element of a regset.  */
                     33: 
                     34: #define REGSET_ELT_BITS HOST_BITS_PER_INT
                     35: 
                     36: /* Number of basic blocks in the current function.  */
                     37: 
                     38: extern int n_basic_blocks;
                     39: 
                     40: /* Index by basic block number, get first insn in the block.  */
                     41: 
                     42: extern rtx *basic_block_head;
                     43: 
                     44: /* Index by basic block number, get last insn in the block.  */
                     45: 
                     46: extern rtx *basic_block_end;
                     47: 
                     48: /* Index by basic block number, get address of regset
                     49:    describing the registers live at the start of that block.  */
                     50: 
                     51: extern regset *basic_block_live_at_start;
                     52: 
                     53: /* Indexed by n, gives number of basic block that  (REG n) is used in.
                     54:    If the value is REG_BLOCK_GLOBAL (-2),
                     55:    it means (REG n) is used in more than one basic block.
                     56:    REG_BLOCK_UNKNOWN (-1) means it hasn't been seen yet so we don't know.
                     57:    This information remains valid for the rest of the compilation
                     58:    of the current function; it is used to control register allocation.  */
                     59: 
                     60: #define REG_BLOCK_UNKNOWN -1
                     61: #define REG_BLOCK_GLOBAL -2
                     62: extern short *reg_basic_block;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.