comparison gen/optimizer.h @ 1482:d9c5f5a43403

Run `semantic3` on imported modules, and emit new symbols with `available_externally` linkage. This allows the inliner to inline functions from other modules while telling the code generator to ignore those functions (treat them as declarations) Still generates a few extra `TypeInfo`s and strings... Disabled when generating debug info because I don't really understand it, and it doesn't like this.
author Frits van Bommel <fvbommel wxs.nl>
date Sun, 07 Jun 2009 16:00:13 +0200
parents 0b26cfb2d445
children
comparison
equal deleted inserted replaced
1481:e0f03e11cdf8 1482:d9c5f5a43403
3 3
4 namespace llvm { class Module; } 4 namespace llvm { class Module; }
5 5
6 bool ldc_optimize_module(llvm::Module* m); 6 bool ldc_optimize_module(llvm::Module* m);
7 7
8 // Determines whether the inliner will run in the -O<N> list of passes
8 bool doInline(); 9 bool doInline();
10 // Determines whether the inliner will be run at all.
11 bool willInline();
9 12
10 int optLevel(); 13 int optLevel();
11 14
12 bool optimize(); 15 bool optimize();
13 16