source: src/CodeGen/FixMain.h @ 1761046

Last change on this file since 1761046 was 61efa42, checked in by Andrew Beach <ajbeach@…>, 12 months ago

Took the special main linkage code out of FunctionDecl? and put it into a new pass. There is also a lot of related clean-up done.

  • Property mode set to 100644
File size: 970 bytes
RevLine 
[13de47bc]1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
[61efa42]7// FixMain.h -- Tools to change a Cforall main into a C main.
[13de47bc]8//
9// Author           : Thierry Delisle
10// Created On       : Thr Jan 12 14:11:09 2017
[f42fc13]11// Last Modified By : Andrew Beach
[8e48fca4]12// Last Modified On : Fri Oct 29 16:20:00 2021
13// Update Count     : 8
[13de47bc]14//
15
[6b0b624]16#pragma once
[13de47bc]17
18#include <iosfwd>
19
[0c577f7]20namespace ast {
21        class FunctionDecl;
[bef4f1a]22        class TranslationUnit;
[0c577f7]23}
[13de47bc]24
25namespace CodeGen {
[0c577f7]26
[61efa42]27/// Is this function a program main function?
28bool isMain( const ast::FunctionDecl * decl );
[13de47bc]29
[61efa42]30/// Adjust the linkage of main functions.
31void fixMainLinkage( ast::TranslationUnit & transUnit, bool replaceMain );
[8e48fca4]32
[61efa42]33/// Add a wrapper around to run the Cforall main.
34void fixMainInvoke( ast::TranslationUnit & transUnit,
35                std::ostream & os, const char * bootloaderFilename );
[f42fc13]36
[60a8062]37} // namespace CodeGen
Note: See TracBrowser for help on using the repository browser.