Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | [ms-inline asm] Use the new GetMCInstOperandNum() interface in the front-end. | Chad Rosier | 2012-09-03 | 1 | -3/+20 | |
| | | | | llvm-svn: 163126 | |||||
* | Removed unused argument. | Chad Rosier | 2012-09-03 | 1 | -3/+2 | |
| | | | | llvm-svn: 163105 | |||||
* | [ms-inline asm] Update for the MatchInstruction API change in r163101. | Chad Rosier | 2012-09-03 | 1 | -5/+7 | |
| | | | | llvm-svn: 163102 | |||||
* | Revert r162424 now that the scoping issue has been fixed in r162444. | Chad Rosier | 2012-08-28 | 1 | -2/+2 | |
| | | | | llvm-svn: 162797 | |||||
* | Tidy up. | Chad Rosier | 2012-08-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 162786 | |||||
* | [ms-inline asm] Add constraints to MSAsmStmt. We don't currently compute | Chad Rosier | 2012-08-28 | 1 | -8/+23 | |
| | | | | | | | the constraints, so in the interim we speculatively assume a 'r' constraint. This is expected to work for most cases on x86. llvm-svn: 162784 | |||||
* | [ms-inline asm] As part of a larger refactoring, rename AsmStmt to GCCAsmStmt. | Chad Rosier | 2012-08-25 | 1 | -13/+13 | |
| | | | | | | No functional change intended. llvm-svn: 162632 | |||||
* | [ms-inline asm] Change the -fenable-experimental-ms-inline-asm option from a | Chad Rosier | 2012-08-24 | 1 | -2/+0 | |
| | | | | | | | | | CodeGen option to a LangOpt option. In turn, hoist the guard into the parser so that we avoid the new (and fairly unstable) Sema/AST/CodeGen logic. This should restore the behavior of clang to that prior to r158325. <rdar://problem/12163681> llvm-svn: 162602 | |||||
* | Remove unnecessary calls to c_str. | Benjamin Kramer | 2012-08-24 | 1 | -3/+3 | |
| | | | | llvm-svn: 162590 | |||||
* | [ms-inline asm] Generate the Input/Output expressions using | Chad Rosier | 2012-08-24 | 1 | -7/+14 | |
| | | | | | | Sema::ActOnIdExpression(). llvm-svn: 162564 | |||||
* | Fix 80-column violation. | Chad Rosier | 2012-08-24 | 1 | -1/+2 | |
| | | | | llvm-svn: 162560 | |||||
* | [ms-inline asm] Add the basic APIs for Exprs to the MSAsmStmt AST. Next we need | Chad Rosier | 2012-08-24 | 1 | -4/+16 | |
| | | | | | | generate the Input/Output expressions using Sema::ActOnIdExpression(). llvm-svn: 162509 | |||||
* | Now that ASTMultiPtr is nothing more than a array reference, make it a ↵ | Benjamin Kramer | 2012-08-23 | 1 | -3/+3 | |
| | | | | | | | | MutableArrayRef. This required changing all get() calls to data() and using the simpler constructors. llvm-svn: 162501 | |||||
* | [ms-inline asm] Rename a few induction variables to avoid confusion and silence | Chad Rosier | 2012-08-23 | 1 | -7/+7 | |
| | | | | | | a gcc warning. llvm-svn: 162444 | |||||
* | Don't recycle loop variables (to keep GCC happy). | Matt Beaumont-Gay | 2012-08-23 | 1 | -2/+2 | |
| | | | | llvm-svn: 162424 | |||||
* | Fix 80-column violation. | Chad Rosier | 2012-08-23 | 1 | -1/+3 | |
| | | | | llvm-svn: 162416 | |||||
* | [ms-inline asm] Compute the inputs and outputs. No test case (yet) as this | Chad Rosier | 2012-08-22 | 1 | -1/+28 | |
| | | | | | | requires codegen support. llvm-svn: 162410 | |||||
* | [ms-inline asm] Refactor code so that we can begin computing the Inputs/Outputs. | Chad Rosier | 2012-08-22 | 1 | -11/+19 | |
| | | | | | | No functional change intended. llvm-svn: 162403 | |||||
* | [ms-inline asm] Add comments. | Chad Rosier | 2012-08-22 | 1 | -1/+3 | |
| | | | | llvm-svn: 162396 | |||||
* | [ms-inline asm] Add comments. | Chad Rosier | 2012-08-22 | 1 | -1/+6 | |
| | | | | llvm-svn: 162394 | |||||
* | [ms-inline asm] Add helper function. No functional change intended. | Chad Rosier | 2012-08-22 | 1 | -2/+7 | |
| | | | | llvm-svn: 162393 | |||||
* | [ms-inline asm] Simplify logic. No functional change intended. | Chad Rosier | 2012-08-22 | 1 | -7/+2 | |
| | | | | llvm-svn: 162392 | |||||
* | [ms-inline asm] Compute the token range for each instruction within the asm. | Chad Rosier | 2012-08-22 | 1 | -4/+9 | |
| | | | | | | | Eventually, we'll need a way of mapping tokens (and their IdentifierInfo*) to the operands computed by buildMSAsmPieces(). llvm-svn: 162388 | |||||
* | [ms-inline asm] Simplify logic. No functional change intended. | Chad Rosier | 2012-08-22 | 1 | -5/+11 | |
| | | | | llvm-svn: 162385 | |||||
* | [ms-inline asm] Start sending non-simple inline asms to the AsmParser. | Chad Rosier | 2012-08-22 | 1 | -15/+27 | |
| | | | | | | | The parser still can't handle all cases, so fall back to emitting a simple MSAsmStmt if we get into trouble. llvm-svn: 162382 | |||||
* | [ms-inline asm] Remove the patchMSAsmStrings function. After some discussion | Chad Rosier | 2012-08-21 | 1 | -134/+17 | |
| | | | | | | | between Bob, Jim, Eric and I, we've decided to take a slightly different approach. llvm-svn: 162327 | |||||
* | [ms-inline asm] Have buildMSAsmString build a vector of unmodified AsmStrings. | Chad Rosier | 2012-08-21 | 1 | -7/+35 | |
| | | | | | | | | | | Add a new static function, buildMSAsmPieces, that will break these strings down into mnemonic and operands. Upon a match failure, the idea is to use the ErrorInfo from MatchInstructionImpl to inspect the mnemonic/operand and decide a course of action. Unfortunately, there's no easy way to test this at the moment. llvm-svn: 162321 | |||||
* | [ms-inline asm] Do not report a Parser error when matching inline assembly. | Chad Rosier | 2012-08-21 | 1 | -1/+2 | |
| | | | | llvm-svn: 162307 | |||||
* | [ms-inline asm] Expose the ErrorInfo from the MatchInstructionImpl. In general, | Chad Rosier | 2012-08-21 | 1 | -1/+3 | |
| | | | | | | this is the index of the operand that failed to match. llvm-svn: 162296 | |||||
* | [ms-inline asm] Append identifier for better debugging. | Chad Rosier | 2012-08-21 | 1 | -0/+1 | |
| | | | | llvm-svn: 162289 | |||||
* | [ms-inline asm] Remove this test case and the associated special case code. | Chad Rosier | 2012-08-21 | 1 | -6/+0 | |
| | | | | llvm-svn: 162288 | |||||
* | [ms-inline asm] Remove old cruft now that MS-style asms their own code path. | Chad Rosier | 2012-08-20 | 1 | -4/+4 | |
| | | | | llvm-svn: 162210 | |||||
* | [ms-inline asm] Update comment. | Chad Rosier | 2012-08-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 162134 | |||||
* | [ms-inline asm] Extract AsmStmt handling into a separate file, so as to not | Chad Rosier | 2012-08-17 | 1 | -0/+635 | |
pollute SemaStmt with extraneous asm handling logic. llvm-svn: 162132 |