- Oct 03, 2013
-
-
Craig Topper authored
llvm-svn: 191871
-
- Oct 01, 2013
-
-
Craig Topper authored
llvm-svn: 191728
-
- Sep 27, 2013
-
-
Yunzhong Gao authored
Phabricator code review is located here: http://llvm-reviews.chandlerc.com/D1750 llvm-svn: 191539
-
- Sep 13, 2013
-
-
Preston Gurd authored
Implements Instruction scheduler latencies for Silvermont, using latencies from the Intel Silvermont Optimization Guide. Auto detects SLM. Turns on post RA scheduler when generating code for SLM. llvm-svn: 190717
-
- Sep 12, 2013
-
-
Ben Langmuir authored
Add basic assembly/disassembly support for the first Intel SHA instruction 'sha1rnds4'. Also includes feature flag, and test cases. Support for the remaining instructions will follow in a separate patch. llvm-svn: 190611
-
- Sep 08, 2013
-
-
Craig Topper authored
llvm-svn: 190259
-
- Sep 02, 2013
-
-
Craig Topper authored
llvm-svn: 189742
-
- Aug 30, 2013
-
-
Craig Topper authored
llvm-svn: 189656
-
Craig Topper authored
llvm-svn: 189654
-
Craig Topper authored
Teach X86 backend to create BMI2 BZHI instructions from (and X, (add (shl 1, Y), -1)). Fixes PR17038. llvm-svn: 189653
-
- Aug 26, 2013
-
-
Craig Topper authored
Remove some unnecessary PredicateMethod overrides. Add RenderMethod overrides to remove forwarding in the X86AsmParser code itself. No functional change. llvm-svn: 189205
-
Craig Topper authored
llvm-svn: 189204
-
Craig Topper authored
First round of fixes for the x86 fixes for the x86 move accumulator from/to memory offset instructions. -Assembly parser now properly check the size of the memory operation specified in intel syntax. So 'mov word ptr [5], al' is no longer accepted. -x86-32 disassembly of these instructions no longer sign extends the 32-bit address immediate based on size. -Intel syntax printing prints the ptr size and places brackets around the address immediate. Known remaining issues with these instructions: -Segment override prefix is not supported. PR16962 and PR16961. -Immediate size should be changed by address size prefix. llvm-svn: 189201
-
- Aug 24, 2013
-
-
Craig Topper authored
Add hasSideEffects/mayLoad/mayStore flags to the X86 moffs8/moffs16/moffs32/moffs64 versions of move. llvm-svn: 189182
-
Craig Topper authored
llvm-svn: 189178
-
- Jul 31, 2013
-
-
Elena Demikhovsky authored
All insertf*/extractf* functions replaced with insert/extract since we have insertf and inserti forms. Added lowering for INSERT_VECTOR_ELT / EXTRACT_VECTOR_ELT for 512-bit vectors. Added lowering for EXTRACT/INSERT subvector for 512-bit vectors. Added a test. llvm-svn: 187491
-
Craig Topper authored
Changed register names (and pointer keywords) to be lower case when using Intel X86 assembler syntax. Patch by Richard Mitton. llvm-svn: 187476
-
Craig Topper authored
Patch by Richard Mitton. llvm-svn: 187471
-
- Jul 28, 2013
-
-
Elena Demikhovsky authored
Added 512-bit operands printing. Added instruction formats for KNL instructions. llvm-svn: 187324
-
- Jul 26, 2013
-
-
Craig Topper authored
llvm-svn: 187187
-
- Jul 24, 2013
-
-
Craig Topper authored
Fix aliases for shrd/shld to handle Intel syntax properly. Also suppress them from being used by the asm printer. llvm-svn: 187020
-
- Jul 23, 2013
-
-
Craig Topper authored
llvm-svn: 186924
-
Craig Topper authored
llvm-svn: 186910
-
Craig Topper authored
llvm-svn: 186907
-
Craig Topper authored
This makes them consistent with 'bt' which already had this handling. gas has the same behavior. There have been discussions on the mailing list about determining size based on the immediate, but my goal here was just to remove the inconsistency. llvm-svn: 186904
-
Craig Topper authored
It only didn't use it before because it seems InstAlias handling in the asm printer fails to count tied operands so it tried to find an xor with 2 operands instead of the 3 it wfails to count tied. llvm-svn: 186900
-
Craig Topper authored
Suppress argumentless aliases for some x86 FP operations from being used by the asm writer. Prefer to use the explicit %st(1) form. llvm-svn: 186897
-
- Jul 22, 2013
-
-
Kevin Enderby authored
absolute address encoded in the instruction. rdar://8612627 and rdar://14299221 llvm-svn: 186878
-
Craig Topper authored
Recommit r186813: More Intel syntax alias fixes. With the addition of suppressing some of the aliases from being emitted by the asm printer. llvm-svn: 186869
-
Tim Northover authored
This reverts commit r186813, which broke the bots. llvm-svn: 186818
-
Craig Topper authored
llvm-svn: 186814
-
Craig Topper authored
llvm-svn: 186813
-
Craig Topper authored
llvm-svn: 186811
-
Craig Topper authored
llvm-svn: 186809
-
- Jun 30, 2013
-
-
Ahmed Bougacha authored
llvm-svn: 185292
-
- Jun 13, 2013
-
-
Benjamin Kramer authored
llvm-svn: 183907
-
- Jun 10, 2013
-
-
Tim Northover authored
Previously LEA64_32r went through virtually the entire backend thinking it was using 32-bit registers until its blissful illusions were cruelly snatched away by MCInstLower and 64-bit equivalents were substituted at the last minute. This patch makes it behave normally, and take 64-bit registers as sources all the way through. Previous uses (for 32-bit arithmetic) are accommodated via SUBREG_TO_REG instructions which make the types and classes agree properly. llvm-svn: 183693
-
- Jun 01, 2013
-
-
Tim Northover authored
Very sorry, it was committed from the wrong branch by mistake. llvm-svn: 183070
-
Tim Northover authored
llvm-svn: 183069
-
- May 10, 2013
-
-
Chad Rosier authored
The issue was that the MatchingInlineAsm and VariantID args to the MatchInstructionImpl function weren't being set properly. Specifically, when parsing intel syntax, the parser thought it was parsing inline assembly in the at&t dialect; that will never be the case. The crash was caused when the emitter tried to emit the instruction, but the operands weren't set. When parsing inline assembly we only set the opcode, not the operands, which is used to lookup the instruction descriptor. rdar://13854391 and PR15945 Also, this commit reverts r176036. Now that we're correctly parsing the intel syntax the pushad/popad don't match properly. I've reimplemented that fix using a MnemonicAlias. llvm-svn: 181620
-