- Oct 07, 2011
-
-
Bill Wendling authored
llvm-svn: 141327
-
Bill Wendling authored
llvm-svn: 141323
-
- Oct 06, 2011
-
-
Bill Wendling authored
Place the immediate to OR into a register so that it works. llvm-svn: 141319
-
Bill Wendling authored
* Some code cleanup. llvm-svn: 141317
-
David Greene authored
Fix VarListElementInit::resolveListElementReference to return a partially resolved VarListElementInint in the case where full resolution is not possible. This allows TableGen to make forward progress resolving certain complex list expressions. llvm-svn: 141315
-
Matt Beaumont-Gay authored
llvm-svn: 141313
-
Justin Holewinski authored
llvm-svn: 141306
-
Benjamin Kramer authored
llvm-svn: 141305
-
Benjamin Kramer authored
llvm-svn: 141299
-
David Greene authored
Compare the entire keyword string. llvm-svn: 141295
-
Torok Edwin authored
They are not in sync now, for example Bitcast would show up as LLVMCall. So instead introduce 2 functions that map to and from the opcodes in the C bindings. llvm-svn: 141290
-
Torok Edwin authored
llvm-svn: 141288
-
Torok Edwin authored
llvm-svn: 141287
-
Torok Edwin authored
llvm-svn: 141286
-
Torok Edwin authored
llvm-svn: 141285
-
Craig Topper authored
Fix assembling of xchg %eax, %eax to not use the NOP encoding of 0x90. This was done by creating a new register group that excludes AX registers. Fixes PR10345. Also added aliases for flipping the order of the operands of xchg <reg>, %eax. llvm-svn: 141274
-
Peter Collingbourne authored
llvm-svn: 141266
-
Bill Wendling authored
to an infinite loop because of the def-use chains. Also use a frame load instead of store for the LD instruction. llvm-svn: 141263
-
Cameron Zwarich authored
llvm-svn: 141248
-
Cameron Zwarich authored
merging an lsl #2 that has multiple uses on A9. This shift is free, so there is no problem merging it in multiple places. Other unprofitable shifts will not be merged. llvm-svn: 141247
-
Bill Wendling authored
number (18) for the proper addressing mode. llvm-svn: 141245
-
David Greene authored
For consistency, prefix multiclass template arg names with the multiclass name followed by "::" to avoid name clashes among multiclass arguments and other entities in the multiclass. llvm-svn: 141239
-
David Greene authored
Process each multidef declared in a multiclass. Iterate through the list and instantiate a def in the multiclass for each item, resolving the list item to the temporary iterator (possibly) used in the multidef ObjectBody. We then process each generated def in the normal way. llvm-svn: 141233
-
David Greene authored
Add parser support to recognize multidefs. No processing on the multidef is done at this point. The grammar is: MultiDef = MULTIDEF ObjectName < Value, Declaration, Value > ObjectBody The first Value must be resolveable to a list and the second Value must be resolveable to an integer. The Declaration is a temporary value used as an iterator to refer to list items during processing. It may be passed into the ObjectBody where it will be substituted with the list value used to instantiate each def. llvm-svn: 141232
-
David Greene authored
Add keyword support for multidefs. llvm-svn: 141231
-
David Greene authored
Move the code to instantiate a multiclass def, bind its arguments and resolve its members into three helper functions. These will be reused to support a new kind of multiclass def: a multidef. llvm-svn: 141229
-
Eli Friedman authored
While I'm here, fix the related issue with strncmp, add some actual tests for strcmp and strncmp, and start using StringRef::compare for constant folding instead of using strcmp/strncmp so that the optimized IR isn't dependent on the host's implementation of strcmp. llvm-svn: 141227
-
Bill Wendling authored
site. llvm-svn: 141226
-
Bill Wendling authored
to the landing pad. This will be used by the back-end to generate the jump tables for dispatching the arriving longjmp in sjlj eh. llvm-svn: 141224
-
Bill Wendling authored
llvm-svn: 141221
-
Jakob Stoklund Olesen authored
PhysReg operands are not allowed to have sub-register indices at all. For virtual registers with sub-reg indices, check that all registers in the register class support the sub-reg index. llvm-svn: 141220
-
Andrew Trick authored
llvm-svn: 141219
-
Bill Wendling authored
llvm-svn: 141218
-
- Oct 05, 2011
-
-
Jakob Stoklund Olesen authored
llvm-svn: 141214
-
Jim Grosbach authored
Just pull the instruction name, but don't change the order of anything else. That keeps --debug happy and non-crashing, but doesn't change how the worklist gets built. llvm-svn: 141210
-
Jim Grosbach authored
llvm-svn: 141209
-
Jakob Stoklund Olesen authored
EXTRACT_SUBREG is emitted as %dst = COPY %src:sub, so there is no need to constrain the %dst register class. RegisterCoalescer will apply the necessary constraints if it decides to eliminate the COPY. The %src register class does need to be constrained to something with the right sub-registers, though. This is currently done manually with COPY_TO_REGCLASS nodes. They can possibly be removed after this patch. llvm-svn: 141207
-
Jakob Stoklund Olesen authored
There are fewer registers with sub_8bit sub-registers in 32-bit mode than in 64-bit mode. In 32-bit mode, sub_8bit behaves the same as sub_8bit_hi. llvm-svn: 141206
-
Rafael Espindola authored
fixes PR11038, but there are still some cleanups to be done. llvm-svn: 141204
-
Jim Grosbach authored
When updating the worklist for InstCombine, the Add/AddUsersToWorklist functions may access the instruction(s) being added, for debug output for example. If the instructions aren't yet added to the basic block, this can result in a crash. Finish the instruction transformation before adjusting the worklist instead. rdar://10238555 llvm-svn: 141203
-