Commit Graph

3 Commits

Author SHA1 Message Date
practicalswift
db13bcb22e Fix typos. 2015-12-26 14:11:42 +01:00
Dmitri Hrybenko
f08d1c9cfc Adjust tests for the new scheme of name conflict resolution in LLVM
Previously, LLVM appended numbers to disambiguate duplicate symbols.
Now it appends a dot an a number.

Swift SVN r29694
2015-06-25 22:01:33 +00:00
Arnold Schwaighofer
15ff698409 IRGen: Give ClangCodeGen a chance to emit its translation unit's global state
We need this because that global state includes tables like llvm[.compiler].used
which would otherwise be sorely missed.

This fixes an issue of the clang importer that would cause us to fail whenever
we imported a function (say it is marked as static inline) that performs an
objective-c method call and we optimize the code. The optimizer would not see
the objective-c selector global variable (which is marked private) as being
"used by unkown i.e the objc runtime" and would rightly assume it could
propagate the value of the global variable's initializer value as a constant to
loads of the global variable.

Now we call the ClangCodeGenerators translation unit finalization code which
will emit these tables and other module flags. We need to take care that we
merge those datastrutures with datastructures that we emit from swift's IRGen.

rdar://21115194

Swift SVN r29176
2015-05-31 00:01:29 +00:00