[@semantics] add SemanticsAttr to SILFunction.

Enable SIL parsing and SIL serialization of semantics.

We add one more field to SILFunctionLayout for semantics. We should refactor
handling of attributes at SIL level, right now they are in SILFunction as bool
or std::string and in SIL serializer as a 1-bit field or an ID field.

rdar://17525564


Swift SVN r19434
This commit is contained in:
Manman Ren
2014-07-01 22:49:46 +00:00
parent 7dae30f755
commit ae9f2e25ae
15 changed files with 81 additions and 16 deletions

View File

@@ -1308,6 +1308,9 @@ void SILFunction::print(llvm::raw_ostream &OS, bool Verbose) const {
if (isNoinline())
OS << "[noinline] ";
if (!getSemanticsAttr().empty())
OS << "[semantics \"" << getSemanticsAttr() << "\"] ";
printName(OS);
OS << " : $";