summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Hexagon: Change insn class to support instruction encoding.Jyotsna Verma2013-02-145-259/+252
| | | | | | | | This patch doesn't introduce any functionality changes. It adds some new fields to the Hexagon instruction classes and changes their layout to support instruction encoding. llvm-svn: 175205
* s/bool/LLVMBool/Bill Wendling2013-02-141-1/+1
| | | | llvm-svn: 175204
* s/bool/LLVMBool/Bill Wendling2013-02-141-1/+1
| | | | llvm-svn: 175203
* death to extra whitespaceKay Tiong Khoo2013-02-141-20/+20
| | | | llvm-svn: 175200
* Add two new functions to the C API:Bill Wendling2013-02-142-0/+30
| | | | | | | | | LLVMCreateMemoryBufferWithMemoryRange - exposes MemoryBuffer::getMemBuffer LLVMCreateMemoryBufferWithMemoryRangeCopy - exposes MemoryBuffer::getMemBufferCopy Patch by Moritz Maxeiner! llvm-svn: 175199
* added basic support for Intel ADX instructionsKay Tiong Khoo2013-02-147-0/+90
| | | | | | -feature flag, instructions definitions, test cases llvm-svn: 175196
* R600/SI: Fix int_SI_fs_interp_constantMichel Danzer2013-02-145-37/+34
| | | | | | | | | | | | | | | | The important fix is that the constant interpolation value is stored in the parameter slot P0, which is encoded as 2. In addition, drop the SI_INTERP_CONST pseudo instruction, pass the parameter slot as an operand to V_INTERP_MOV_F32 instead of hardcoding it there, and add a special operand class for the parameter slots for type checking and pretty printing. NOTE: This is a candidate for the Mesa stable branch. Reviewed-by: Christian König <christian.koenig@amd.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com> llvm-svn: 175193
* include/llvm/Object/ELF.h: do debug checks only when NDEBUGDmitry Vyukov2013-02-141-0/+2
| | | | | | | validateSymbol() is called all over the place, and it seems it's a debug check. It significantly speedups llvm-symbolizer used in tsan/asan/msan. validateSymbol() is the second hot function and accounts for 15% of runtime. llvm-svn: 175192
* Dont merge consecutive loads/stores into vectors when noimplicitfloat is used.Nadav Rotem2013-02-142-6/+40
| | | | llvm-svn: 175190
* 80-colNadav Rotem2013-02-141-1/+2
| | | | llvm-svn: 175189
* Hexagon: Use multiclass for absolute addressing mode loads.Jyotsna Verma2013-02-141-74/+35
| | | | | | This patch doesn't introduce any functionality changes. llvm-svn: 175187
* Re-apply r175088 for bug fix 13622: Add paired register support forWeiming Zhao2013-02-144-8/+205
| | | | | | | | inline asm with 64-bit data on ARM Update test case to use -mtriple=arm-linux-gnueabi llvm-svn: 175186
* Fix for bug 15246 -- out-of-bound error in the TableGen backend, ↵Jyotsna Verma2013-02-141-5/+4
| | | | | | CodeGenMapTable.cpp. llvm-svn: 175185
* R600: Do not fold single instruction with more that 3 kcache readVincent Lejeune2013-02-143-1/+55
| | | | | | | | | It fixes around 100 tfb piglit tests and 16 glean tests. NOTE: This is a candidate for the Mesa stable branch. Reviewed-by: Tom Stellard <thomas.stellard at amd.com> llvm-svn: 175183
* R600: Export instructions are no longer terminatorVincent Lejeune2013-02-141-2/+2
| | | | | | | | This allows MachineInstScheduler to reorder them, and thus make scheduling more efficient. Reviewed-by: Tom Stellard <thomas.stellard at amd.com> llvm-svn: 175182
* R600: Fold zero/one in export instructionsVincent Lejeune2013-02-143-80/+55
| | | | | Reviewed-by: Tom Stellard <thomas.stellard at amd.com> llvm-svn: 175181
* R600: Do not fold modifier/litterals in vector instVincent Lejeune2013-02-141-2/+5
| | | | | | | | | This fixes a couple of regressions on (probably not just) cayman NOTE: This is a candidate for the Mesa stable branch. Reviewed-by: Tom Stellard <thomas.stellard at amd.com> llvm-svn: 175180
* Use correct host/target CMake variables to define lit variables.Tim Northover2013-02-141-2/+2
| | | | | | | | | | | | | CMake and autotools disagree on what "host" means in a cross-compilation context. Autotools (and lit) take it to be the machine the binaries being compiled now will run on. CMake takes it to be the machine actually compiling the binaries now. This change makes lit.site-cfg more consistent between autotools and CMake, allowing lit tests (particularly in ExecutionEngine) to run correctly when cross-compiled with CMake llvm-svn: 175179
* AArch64: switch from neverHasSideEffects to hasSideEffects.Tim Northover2013-02-141-4/+4
| | | | llvm-svn: 175176
* Add deprecation of neverHasSideEffects to documentation comments.Tim Northover2013-02-141-2/+3
| | | | llvm-svn: 175175
* Revert r15266. This fixes llvm.org/pr15266.Rafael Espindola2013-02-143-60/+25
| | | | llvm-svn: 175173
* AArch64: stop claiming that NEON registers are usable for now.Tim Northover2013-02-141-11/+0
| | | | | | | | | | If vector types have legal register classes, then LLVM bypasses LegalizeTypes on them, which causes faults currently since the code to handle them isn't in place. This fixes test failures when AArch64 is the default target. llvm-svn: 175172
* AArch64: add block comments where missingTim Northover2013-02-1419-11/+86
| | | | | | Only comments affected. No code change at all. llvm-svn: 175169
* Add testcase for llvm-dwarfdump to test parsing of the pubnames data.Krzysztof Parzyszek2013-02-143-0/+48
| | | | llvm-svn: 175168
* On FreeBSD, we need to look in /usr/local/include so that libxml2 finds iconv.hDavid Chisnall2013-02-141-0/+7
| | | | | | Patch by Jonathan Anderson! llvm-svn: 175167
* Make ARMAsmParser accept the correct alignment specifier syntax in instructions.Kristof Beyls2013-02-147-157/+177
| | | | | | | | | The parser will now accept instructions with alignment specifiers written like vld1.8 {d16}, [r0:64] , while also still accepting the incorrect syntax vld1.8 {d16}, [r0, :64] llvm-svn: 175164
* llvm-symbolizer: speedup symbol lookupDmitry Vyukov2013-02-142-43/+73
| | | | llvm-svn: 175158
* Workaround an MSan false positive.Evgeniy Stepanov2013-02-141-0/+2
| | | | llvm-svn: 175156
* Moved line-info.ll to DebugInfo\X86 directoryElena Demikhovsky2013-02-141-0/+0
| | | | llvm-svn: 175150
* Add some legality checks for SETCC before introducing it in the DAG combiner ↵Owen Anderson2013-02-141-2/+6
| | | | | | post-operand legalization. llvm-svn: 175149
* The test failed on Windows. I've changed the platform to run to ↵Elena Demikhovsky2013-02-141-1/+1
| | | | | | "x86_64-apple-darwin". llvm-svn: 175146
* Fixed a bug in X86TargetLowering::LowerVectorIntExtend() (assertion failure).Elena Demikhovsky2013-02-142-3/+31
| | | | | | Added a test. llvm-svn: 175144
* R600/SI: Check for empty stack in SIAnnotateControlFlow::isTopOfStackMichel Danzer2013-02-141-1/+1
| | | | | | | Fixes assertion failure in newly added lit test. Might just be a bandaid that needs to be revisited. llvm-svn: 175139
* R600: Add lit tests for texture sampling instruction selection.Michel Danzer2013-02-142-0/+113
| | | | | Reviewed-by: Tom Stellard <thomas.stellard@amd.com> llvm-svn: 175138
* Reapply "s/grep/FileCheck/ in some tests"Andrew Trick2013-02-145-6/+15
| | | | | | | | This reverts commit fd1335e982bbf93c5f450ed4fd29f9f787435c85. Use a triple this time. llvm-svn: 175134
* Revert r175120 and r175121. Clang is producing the expected asm names again.Rafael Espindola2013-02-142-1/+7
| | | | llvm-svn: 175133
* RegisterCoalescer::reMaterializeTrivialDef() can constrain the destinationCameron Zwarich2013-02-141-1/+1
| | | | | | register class to match the defining instruction. llvm-svn: 175130
* Add missing typename to unbreak the MSVC 2012 build.Francois Pichet2013-02-142-10/+10
| | | | llvm-svn: 175129
* Teach the DataLayout aware constant folder to be much more aggressive towardsNick Lewycky2013-02-142-8/+42
| | | | | | 'and' instructions. This is a pattern that shows up a lot in ubsan binaries. llvm-svn: 175128
* Remove the form field from Mips16 instruction formats and set thingsReed Kotler2013-02-143-87/+73
| | | | | | | | | up so that we can apply the direct object emitter patch. This patch should be a nop right now and it's test is to not break what is already there. llvm-svn: 175126
* Revert "s/grep/FileCheck/ in some tests"Andrew Trick2013-02-145-16/+6
| | | | | | | | | | | | | | | | | | This reverts commit 8b75e6bc35fb3f9c1e788dbd05084c0f4a60a0f3. The FileCheck tests are not equivalent: test/CodeGen/X86/tailcall-structret.ll:6:10: error: expected string not found in input ; CHECK: jmp init ^ <stdin>:1:2: note: scanning from here .section __TEXT,__text,regular,pure_instructions ^ <stdin>:13:2: note: possible intended match here jmp _init ## TAILCALL ^ llvm-svn: 175124
* Fix RegisterCoalescer::rematerializeTrivialDef() so that it works on flippedCameron Zwarich2013-02-141-10/+10
| | | | | | | CoalescerPairs. Also, make it take a CoalescerPair directly like other methods of RegisterCoalescer. llvm-svn: 175123
* Fix some issues with rematerialization in RegisterCoalescer when the destinationCameron Zwarich2013-02-141-0/+10
| | | | | | | | | | | | of the copy is a subregister def. The current code assumes that it can do a full def of the destination register, but it is not checking that the def operand is read-undef. It also doesn't clear the subregister index of the destination in the new instruction to reflect the full subregister def. These issues were found running 'make check' with my next commit that enables rematerialization in more cases. llvm-svn: 175122
* Don't assume the mangling of static functions.Rafael Espindola2013-02-141-6/+0
| | | | llvm-svn: 175121
* Don't asume that a static function in an extern "C" block will not be mangled.Rafael Espindola2013-02-141-1/+1
| | | | | | | | | | | | | | Since functions with internal linkage don't have language linkage, it is valid to overload them: extern "C" { static int foo(); static int foo(int); } So we mangle them. llvm-svn: 175120
* temporarily revert the patch due to some conflictsWeiming Zhao2013-02-134-205/+8
| | | | llvm-svn: 175107
* Retain the name of the new internal global that's been shrunk.Bill Wendling2013-02-131-2/+5
| | | | | | | | | It's possible (e.g. after an LTO build) that an internal global may be used for debugging purposes. If that's the case appending a '.b' to it makes it hard to find that variable. Steal the name from the old GV before deleting it so that they can find that variable again. llvm-svn: 175104
* Hexagon: add support for predicate-GPR copies.Anshuman Dasgupta2013-02-132-0/+20
| | | | llvm-svn: 175102
* llvm-gcc -pedantic warns about C++ comments in C90 mode even if they'reAlex Rosenberg2013-02-131-1/+1
| | | | | | inside an #if 0 block. llvm-svn: 175098
* Fix iterator definitions for ImmutableSet and ImmutableMap.Ryan Govostes2013-02-132-20/+24
| | | | llvm-svn: 175097
OpenPOWER on IntegriCloud