Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | [ms-inline asm] Update test case now that we are correctly parsing __emit ↵ | Chad Rosier | 2013-02-12 | 1 | -2/+2 | |
| | | | | | | directives. llvm-svn: 175000 | |||||
* | Typo. | Chad Rosier | 2013-02-12 | 1 | -1/+1 | |
| | | | | llvm-svn: 174995 | |||||
* | [ms-inline asm] Add a few test cases for the parsing of hexidecimal integers. | Chad Rosier | 2013-02-12 | 1 | -0/+34 | |
| | | | | llvm-svn: 174989 | |||||
* | [ms-inline asm] Remove the -fenable-experimental-ms-inline-asm flag. MS-style | Chad Rosier | 2013-01-22 | 1 | -1/+1 | |
| | | | | | | inline assembly can be enable with -fasm-blocks or -fms-extensions alone. llvm-svn: 173186 | |||||
* | [ms-inline asm] Updates and test case for r172743. | Chad Rosier | 2013-01-17 | 1 | -1/+29 | |
| | | | | | | Part of rdar://12576868 llvm-svn: 172744 | |||||
* | [ms-inline asm] Add test case for r172121. | Chad Rosier | 2013-01-10 | 1 | -0/+7 | |
| | | | | | | Part of rdar://12991541 llvm-svn: 172122 | |||||
* | [ms-inline asm] Add a test case for the offset operator where the operand is a | Chad Rosier | 2013-01-08 | 1 | -3/+6 | |
| | | | | | | global variable. llvm-svn: 171919 | |||||
* | Test case for r171784. | Chad Rosier | 2013-01-07 | 1 | -0/+8 | |
| | | | | llvm-svn: 171785 | |||||
* | [driver, ms-inline asm] MS-Style inline assembly is controlled by the | Chad Rosier | 2012-12-05 | 1 | -2/+1 | |
| | | | | | | | -fasm-blocks flag, not the -fms-extensions flag. rdar://12808010 llvm-svn: 169422 | |||||
* | [ms-inline asm] Add more tests. | Chad Rosier | 2012-12-05 | 1 | -0/+29 | |
| | | | | llvm-svn: 169411 | |||||
* | [ms-inline asm] Test case for r166790. | Chad Rosier | 2012-10-26 | 1 | -0/+7 | |
| | | | | llvm-svn: 166791 | |||||
* | [ms-inline asm] Add a test case for r166723 and r166724. | Chad Rosier | 2012-10-25 | 1 | -0/+14 | |
| | | | | llvm-svn: 166725 | |||||
* | [ms-inline asm] Test case for r166632. | Chad Rosier | 2012-10-24 | 1 | -0/+16 | |
| | | | | llvm-svn: 166633 | |||||
* | [ms-inline asm] Add test cases for r166451. | Chad Rosier | 2012-10-24 | 1 | -0/+10 | |
| | | | | llvm-svn: 166600 | |||||
* | [ms-inline asm] Add test cases for r166592. The test cases only works if the | Chad Rosier | 2012-10-24 | 1 | -0/+7 | |
| | | | | | | source operand is a register. llvm-svn: 166594 | |||||
* | [ms-inline asm] Update the triple to test r166523. | Chad Rosier | 2012-10-23 | 1 | -1/+1 | |
| | | | | llvm-svn: 166524 | |||||
* | [ms-inline asm] Update for r166433. | Chad Rosier | 2012-10-23 | 1 | -0/+1 | |
| | | | | llvm-svn: 166489 | |||||
* | Testcase change for r166440. | Eli Friedman | 2012-10-22 | 1 | -1/+1 | |
| | | | | llvm-svn: 166441 | |||||
* | [ms-inline asm] Test case for r166433. | Chad Rosier | 2012-10-22 | 1 | -0/+8 | |
| | | | | llvm-svn: 166434 | |||||
* | [ms-inline asm] Update test case for r166357. | Chad Rosier | 2012-10-20 | 1 | -1/+1 | |
| | | | | llvm-svn: 166358 | |||||
* | [ms-inline asm] Test case for r166349 and r166352. | Chad Rosier | 2012-10-19 | 1 | -0/+13 | |
| | | | | llvm-svn: 166353 | |||||
* | [ms-inline asm] Update testcase for r166316. | Chad Rosier | 2012-10-19 | 1 | -2/+12 | |
| | | | | llvm-svn: 166317 | |||||
* | [ms-inline asm] Revert accidental commit. Sorry for the churn. | Chad Rosier | 2012-10-19 | 1 | -24/+1 | |
| | | | | llvm-svn: 166312 | |||||
* | [ms-inline asm] Set the SemaCallback in the TargetAsmParser. | Chad Rosier | 2012-10-19 | 1 | -1/+24 | |
| | | | | llvm-svn: 166310 | |||||
* | [ms-inline asm] Remove accidental commit. | Chad Rosier | 2012-10-18 | 1 | -17/+0 | |
| | | | | llvm-svn: 166193 | |||||
* | [ms-inline asm] Move most of the AsmParsing logic in clang back into the MC | Chad Rosier | 2012-10-18 | 1 | -0/+17 | |
| | | | | | | | layer. Use the new ParseMSInlineAsm() API and add an implementation of the MCAsmParserSemaCallback interface. llvm-svn: 166184 | |||||
* | [ms-inline asm] Rework the front-end to use the API introduced in r165946. | Chad Rosier | 2012-10-15 | 1 | -2/+2 | |
| | | | | | | | | | | | | | | | | | | | -The front-end now builds a single assembly string and feeds it to the AsmParser. The front-end iterates on a per statement basis by calling the ParseStatement() function. Please note, the calling of ParseStatement() and and any notion of MCAsmParsedOperands will be sunk into the MC layer in the near future. I plan to expose more basic APIs such as getClobbers, etc. -The enumeration of the AsmString expressions have been reworked to use SMLocs rather than assembly Pieces, which were being parsed in the front-end. -The test case, t8(), was modified due to r129223. I'll have to find a way to work around things such as these. Sorry for the large commit, but breaking this in multiple smaller commits proved too irritating. llvm-svn: 165957 | |||||
* | [ms-inline asm] Remove a bunch of parsing code from the front-end, which will be | Chad Rosier | 2012-10-12 | 1 | -32/+3 | |
| | | | | | | reimplemented in the AsmParser where it belongs. llvm-svn: 165825 | |||||
* | [ms-inline asm] Remove a bunch of parsing code from the front-end, which will be | Chad Rosier | 2012-10-11 | 1 | -26/+2 | |
| | | | | | | reimplemented in the AsmParser where it belongs. llvm-svn: 165752 | |||||
* | [ms-inline asm] Lookup the IdentifierInfo using the Idents table and remove the | Chad Rosier | 2012-10-11 | 1 | -9/+0 | |
| | | | | | | | | | now unused static helper function. The test case needs to be remove temporarily until I can better filter memory operands that aren't actual variable reference. llvm-svn: 165751 | |||||
* | Test case for r165275. | Chad Rosier | 2012-10-04 | 1 | -0/+9 | |
| | | | | llvm-svn: 165276 | |||||
* | Update test case for r165174. | Chad Rosier | 2012-10-03 | 1 | -3/+3 | |
| | | | | llvm-svn: 165175 | |||||
* | [ms-inline asm] Fixup test case to be valid ms-style asm. Fix whitespace. | Chad Rosier | 2012-10-02 | 1 | -2/+4 | |
| | | | | llvm-svn: 165045 | |||||
* | clang/test/CodeGen/ms-inline-asm.c: It requires x86 codegen. Reported by ↵ | NAKAMURA Takumi | 2012-09-27 | 1 | -0/+1 | |
| | | | | | | Joey Gouly. llvm-svn: 164775 | |||||
* | [ms-inline asm] Handle the enumeration of input and output expressions in a | Chad Rosier | 2012-09-13 | 1 | -0/+13 | |
| | | | | | | | | | | | | more robust way to address a few FIXMEs. The initial implementation, r163342, built the IR asm string and then tried to patch things on the fly without enough context. Specifically, it didn't skip mnemonics nor did it track with assembly instruction an expression was related to. The new implementation patches the operands and then builds the final IR string. llvm-svn: 163756 | |||||
* | Whitespace. | Chad Rosier | 2012-09-12 | 1 | -1/+1 | |
| | | | | llvm-svn: 163751 | |||||
* | Fix test case for Release builds. | Chad Rosier | 2012-09-12 | 1 | -1/+1 | |
| | | | | llvm-svn: 163737 | |||||
* | [ms-inline asm] Add a test case. | Chad Rosier | 2012-09-12 | 1 | -0/+6 | |
| | | | | llvm-svn: 163731 | |||||
* | [ms-inline asm] Test case for r163729. | Chad Rosier | 2012-09-12 | 1 | -0/+6 | |
| | | | | llvm-svn: 163730 | |||||
* | [ms-inline asm] If we have a single asm operand that maps to multiple | Chad Rosier | 2012-09-12 | 1 | -0/+12 | |
| | | | | | | | | | | | MCOperands then iterate over all of then when computing clobbers, inputs and outputs. On x86 the 1-to-many mapping is a memory operand that includes a BaseReg(reg), MemScale(imm), MemIndexReg(reg), an Expr(MCExpr or imm) and a MemSegReg(reg). Invalid register (Op.getReg() == 0) are not considered when computing clobber. llvm-svn: 163728 | |||||
* | [ms-inline asm] Add $$ before numeric constants in the IR. | Chad Rosier | 2012-09-11 | 1 | -8/+14 | |
| | | | | llvm-svn: 163581 | |||||
* | [ms-inline asm] Output empty asm statements for the directives we don't | Chad Rosier | 2012-09-06 | 1 | -0/+9 | |
| | | | | | | | handle. Otherwise, the AsmParser will explode if we try to generate an object files. llvm-svn: 163345 | |||||
* | [ms-inline asm] The IR representation of inline assembly enumerates the input | Chad Rosier | 2012-09-06 | 1 | -1/+1 | |
| | | | | | | | and output expressions much like that in GNU-style inline assembly. Output expressions are first. Do this for MS-style inline asms. llvm-svn: 163342 | |||||
* | Update for r163231. | Chad Rosier | 2012-09-05 | 1 | -16/+16 | |
| | | | | llvm-svn: 163232 | |||||
* | [ms-inline asm] Update test case for r163181. | Chad Rosier | 2012-09-05 | 1 | -16/+16 | |
| | | | | llvm-svn: 163182 | |||||
* | [ms-inline asm] Remove the Inline Asm Non-Standard Dialect attribute. This | Chad Rosier | 2012-09-04 | 1 | -16/+16 | |
| | | | | | | | implementation does not co-exist well with how the sideeffect and alignstack attributes are handled. llvm-svn: 163173 | |||||
* | [ms-inline asm] The MCInstrDesc only tracks register definitions. For now, | Chad Rosier | 2012-09-04 | 1 | -2/+1 | |
| | | | | | | | assume that if the 1st operands is an expression and the instruction mayStore, then it is a memory definition. llvm-svn: 163144 | |||||
* | Fix test case for Release builds. | Chad Rosier | 2012-08-28 | 1 | -1/+1 | |
| | | | | llvm-svn: 162800 | |||||
* | [ms-inline asm] Have MSAsmStmts use the generic EmitAsmStmt codegen function. | Chad Rosier | 2012-08-28 | 1 | -1/+2 | |
| | | | | llvm-svn: 162796 | |||||
* | [ms-inline asm] Start sending non-simple inline asms to the AsmParser. | Chad Rosier | 2012-08-22 | 1 | -1/+1 | |
| | | | | | | | The parser still can't handle all cases, so fall back to emitting a simple MSAsmStmt if we get into trouble. llvm-svn: 162382 |