annotate gen/optimizer.h @ 1404:11b122f92136

Now that templates instantiations are no longer emitted for all modules that even blink at them they seem to break due to being linkonce (if compiled with any optimization level > 0), so let's give them weak linkage instead. The difference is that unreferenced linkonce symbols can be deleted, while weak symbols need to be preserved.
author Frits van Bommel <fvbommel wxs.nl>
date Thu, 21 May 2009 15:23:28 +0200
parents 0b26cfb2d445
children d9c5f5a43403
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1173
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
1 #ifndef LDC_GEN_OPTIMIZER_H
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
2 #define LDC_GEN_OPTIMIZER_H
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
3
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
4 namespace llvm { class Module; }
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
5
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
6 bool ldc_optimize_module(llvm::Module* m);
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
7
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
8 bool doInline();
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
9
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
10 int optLevel();
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
11
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
12 bool optimize();
b0f9652f31de Forgot to commit this file, sorry
Frits van Bommel <fvbommel wxs.nl>
parents:
diff changeset
13
1174
0b26cfb2d445 Add newlines to end of file.
Christian Kamm <kamm incasoftware de>
parents: 1173
diff changeset
14 #endif
0b26cfb2d445 Add newlines to end of file.
Christian Kamm <kamm incasoftware de>
parents: 1173
diff changeset
15