Lines Matching refs:AsmString
50 /// ParseAsmString - Parse the specified Instruction's AsmString into this
60 std::string AsmString = CGI.FlattenAsmStringVariants(CGI.AsmString, Variant);
62 while (LastEmitted != AsmString.size()) {
64 AsmString.find_first_of("$\\", LastEmitted);
65 if (DollarPos == std::string::npos) DollarPos = AsmString.size();
70 switch (AsmString[LastEmitted]) {
84 AddLiteralString(std::string(1, AsmString[LastEmitted]));
87 } else if (AsmString[DollarPos] == '\\') {
88 if (DollarPos+1 != AsmString.size()) {
89 if (AsmString[DollarPos+1] == 'n') {
91 } else if (AsmString[DollarPos+1] == 't') {
93 } else if (std::string("${|}\\").find(AsmString[DollarPos+1])
95 AddLiteralString(std::string(1, AsmString[DollarPos+1]));
103 } else if (DollarPos+1 != AsmString.size() &&
104 AsmString[DollarPos+1] == '$') {
115 if (VarEnd < AsmString.size() && '{' == AsmString[VarEnd]) {
121 while (VarEnd < AsmString.size() && isIdentChar(AsmString[VarEnd]))
123 std::string VarName(AsmString.begin()+DollarPos+1,
124 AsmString.begin()+VarEnd);
135 if (VarEnd >= AsmString.size())
140 if (AsmString[VarEnd] == ':') {
142 if (VarEnd >= AsmString.size())
147 while (VarEnd < AsmString.size() && isIdentChar(AsmString[VarEnd]))
149 Modifier = std::string(AsmString.begin()+ModifierStart,
150 AsmString.begin()+VarEnd);
155 if (AsmString[VarEnd] != '}')