| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Sandeep Patel noticed that the alignment was wrong for Neon vector types,
and this change is partly derived from his patch. For the APCS ABI, however,
additional changes were required: the maximum ABI alignment is 32 bits and
the preferred alignment for i64 and f64 types should be 64 bits.
llvm-svn: 128825
|
| |
|
|
| |
llvm-svn: 128823
|
| |
|
|
|
|
|
|
| |
Define most shift masks incrementally to reduce the redundant
hard-coding. Introduce new shift for the VEX flags to replace the
magic constant 32 in various places.
llvm-svn: 128822
|
| |
|
|
| |
llvm-svn: 128821
|
| |
|
|
| |
llvm-svn: 128820
|
| |
|
|
| |
llvm-svn: 128819
|
| |
|
|
| |
llvm-svn: 128818
|
| |
|
|
| |
llvm-svn: 128812
|
| |
|
|
|
|
|
| |
returning a scalar value in a function whose return type is a single-
element structure or array.
llvm-svn: 128810
|
| |
|
|
| |
llvm-svn: 128809
|
| |
|
|
|
|
| |
Contributed by: etherzhhb@gmail.com
llvm-svn: 128808
|
| |
|
|
| |
llvm-svn: 128807
|
| |
|
|
|
|
|
| |
I'm pretty sure this is the right fix, but I would appreciate it if someone
else would double-check.
llvm-svn: 128806
|
| |
|
|
|
|
|
| |
ref_cnt mutable and Retain/Release const to enable reference counted
pointers to const objects
llvm-svn: 128804
|
| |
|
|
|
|
|
| |
llvm-commits. (Not sure why it only breaks on Windows; maybe it has
something to do with the iterator representation...)
llvm-svn: 128802
|
| |
|
|
|
|
| |
separate executable.
llvm-svn: 128801
|
| |
|
|
| |
llvm-svn: 128800
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Adds support for sniffing PE/COFF files on win32 (.exe and .dll)
which are COFF files that have an MS-DOS compatibility stub on
the front of them.
- Fixes a bug in the COFFObjectFile's support for the Microsoft COFF
extension for long symbol names, wherein it was attempting to parse
the leading '/' in an extended symbol name reference as part of the
integer offset.
- Fixes bugs in COFFObjectFile and ELFObjectFile wherein section
and symbol iterators were being returned with uninitialized bytes;
the type DataRefImpl is a union between 2 32-bit words (d.a and d.b)
and a single intptr_t word (p). Only p was being initialized, so in
32-bit builds the result would be iterators with random upper 32-bit
words in their DataRefImpls. This caused random failures when
seeking around in object files.
Patch by Graydon Hoare!
llvm-svn: 128799
|
| |
|
|
|
|
| |
Patch by Patrick Walton!
llvm-svn: 128798
|
| |
|
|
| |
llvm-svn: 128797
|
| |
|
|
|
|
| |
http://llvm.org/bugs/show_bug.cgi?id=9351
llvm-svn: 128796
|
| |
|
|
|
|
| |
seem to be used anywhere.
llvm-svn: 128793
|
| |
|
|
|
|
| |
Patch by arrowdodger!
llvm-svn: 128789
|
| |
|
|
|
|
|
|
| |
auto type deduction since r126166. Update the website to reflect this, and add a __has_feature test.
trailing-return-type codegen is not tested yet (name mangling in particular).
llvm-svn: 128787
|
| |
|
|
|
|
| |
doesn't get called for each CallExpr. Instead it does a switch and only runs the check for the proper identifier. Slight speed improvement (probably significant on very large ASTs), and should make it easier and more clear to add more checks for other CallExpr's later.
llvm-svn: 128785
|
| |
|
|
|
|
|
|
| |
position of a branch condition, and a new generateNode method to BranchNodeBuilder using PostCondition ProgramPoint. This method generates a new ExplodedNode but not a new block edge.
Patch by Lei Zhang!
llvm-svn: 128784
|
| |
|
|
|
|
| |
assigned a LazyCompoundValue. Fixes <rdar://problem/9163742> and PR 9522.
llvm-svn: 128783
|
| |
|
|
|
|
|
|
|
|
|
| |
after the given instruction; make sure to handle that case correctly.
(It's difficult to trigger; the included testcase involves a dead
block, but I don't think that's a requirement.)
While I'm here, get rid of the unnecessary warning about
SimplifyInstructionsInBlock, since it should work correctly as far as I know.
llvm-svn: 128782
|
| |
|
|
|
|
|
| |
Based on PR9429, but no testcase because I can't figure out how to trigger it
anymore given other changes to the relevant code.
llvm-svn: 128781
|
| |
|
|
|
|
| |
non-header file.
llvm-svn: 128780
|
| |
|
|
|
|
| |
duplication. No functionality change.
llvm-svn: 128779
|
| |
|
|
|
|
|
|
|
|
| |
It's possible to craft an input that hits the recursion limits in a way
that SimplifyDemandedBits doesn't simplify the icmp but ComputeMaskedBits
can infer which bits are zero.
No test case as it depends on too many other things. Fixes PR9609.
llvm-svn: 128777
|
| |
|
|
|
|
| |
CharUnits. No change in functionality intended.
llvm-svn: 128776
|
| |
|
|
|
|
| |
change in functionality intended.
llvm-svn: 128773
|
| |
|
|
|
|
| |
dumpLayout(). No change in functionality intended.
llvm-svn: 128771
|
| |
|
|
|
|
| |
change in functionality intended.
llvm-svn: 128770
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
If someone first configure build with LLVM_ENABLE_FFI=1 and then turn it
off, the build will fail in lib/ExecutionEngine/Interpreter because
Interpreter will try still to #include <ffi/ffi.h>, but there are no
include_directories(${FFI_INCLUDE_DIR}) now.
This patch unset()'s HAVE_FFI_H and HAVE_FFI_FFI_H from cache file if
LLVM_ENABLE_FFI=0. This forces CMake to update config.h.
Patch by arrowdodger!
llvm-svn: 128769
|
| |
|
|
|
|
|
|
|
|
|
| |
a couple of operator overloads which form interesting expressions in the
AST.
I added test cases for both bugs with the c-index-test's token
annotation feature. Also, thanks to John McCall for confirming that this
is the correct solution.
llvm-svn: 128768
|
| |
|
|
| |
llvm-svn: 128767
|
| |
|
|
| |
llvm-svn: 128765
|
| |
|
|
|
|
|
|
| |
When the greedy register allocator is splitting multiple global live ranges, it
tends to look at the same interference data many times. The InterferenceCache
class caches queries for unaltered LiveIntervalUnions.
llvm-svn: 128764
|
| |
|
|
|
|
| |
This is more compact and faster than using DenseMap.
llvm-svn: 128763
|
| |
|
|
| |
llvm-svn: 128762
|
| |
|
|
|
|
| |
didn't know how to handle a specific Expr type.
llvm-svn: 128761
|
| |
|
|
|
|
| |
a given CFGBlock was analyzed too many times.
llvm-svn: 128760
|
| |
|
|
|
|
|
|
| |
registers that arise from argument shuffling with the soft float ABI. These
instructions are particularly slow on Cortex A8. This fixes one half of
<rdar://problem/8674845>.
llvm-svn: 128759
|
| |
|
|
|
|
|
|
| |
transformations in target-specific DAG combines without causing DAGCombiner to
delete the same node twice. If you know of a better way to avoid this (see my
next patch for an example), please let me know.
llvm-svn: 128758
|
| |
|
|
|
|
|
|
|
|
| |
operand in am2offset;
instead of the second operand in addrmode_imm12.
rdar://problem/9225289
llvm-svn: 128757
|
| |
|
|
|
|
| |
functionality intended.
llvm-svn: 128756
|
| |
|
|
|
|
|
| |
process stops for some reason. main.c (compiled into a.out) is used as an example in
the README-run-until-faulted file.
llvm-svn: 128755
|