GCC Middle and Back End API Reference
graphite.cc File Reference
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "backend.h"
#include "diagnostic-core.h"
#include "cfgloop.h"
#include "tree-pass.h"
#include "pretty-print.h"
#include "cfganal.h"
Include dependency graph for graphite.cc:

Macros

#define INCLUDE_ISL
 

Functions

static void graphite_transform_loops (void)
 
static unsigned int graphite_transforms (struct function *fun)
 
static bool gate_graphite_transforms (void)
 
gimple_opt_passmake_pass_graphite (gcc::context *ctxt)
 
gimple_opt_passmake_pass_graphite_transforms (gcc::context *ctxt)
 

Macro Definition Documentation

◆ INCLUDE_ISL

#define INCLUDE_ISL
Gimple Represented as Polyhedra. Copyright (C) 2006-2025 Free Software Foundation, Inc. Contributed by Sebastian Pop <sebastian.pop@inria.fr>. This file is part of GCC. GCC 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 3, or (at your option) any later version. GCC 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 GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
This pass converts GIMPLE to GRAPHITE, performs some loop transformations and then converts the resulting representation back to GIMPLE. An early description of this pass can be found in the GCC Summit'06 paper "GRAPHITE: Polyhedral Analyses and Optimizations for GCC". The wiki page http://gcc.gnu.org/wiki/Graphite contains pointers to the related work.

Function Documentation

◆ gate_graphite_transforms()

static bool gate_graphite_transforms ( void )
static

◆ graphite_transform_loops()

static void graphite_transform_loops ( void )
static

References sorry().

Referenced by graphite_transforms().

◆ graphite_transforms()

static unsigned int graphite_transforms ( struct function * fun)
static

◆ make_pass_graphite()

gimple_opt_pass * make_pass_graphite ( gcc::context * ctxt)

◆ make_pass_graphite_transforms()

gimple_opt_pass * make_pass_graphite_transforms ( gcc::context * ctxt)