summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [WebAssembly] Implement a prototype instruction encoder and disassembler.Dan Gohman2016-01-127-24/+231
| | | | | | | This is using an extremely simple temporary made-up binary format, not the official binary format (which isn't defined yet). llvm-svn: 257440
* [WebAssembly] Register the MC subtarget info.Dan Gohman2016-01-121-0/+8
| | | | llvm-svn: 257439
* [WebAssembly] Define OperandTypes for decoding immediate values.Dan Gohman2016-01-122-13/+33
| | | | llvm-svn: 257438
* [ELF] FreeBSD has slightly different emulation strings for PPC.Davide Italiano2016-01-121-2/+2
| | | | | | Teach lld about them. llvm-svn: 257437
* [WebAssembly] Define a custom segment type for function definitions.Dan Gohman2016-01-121-1/+4
| | | | | | | | Since function definitions are not loaded into the address space, PT_LOAD is inappropriate. PT_WEBASSEMBLY_FUNCTIONS is used to identify where the function definitions are so that they can be processed at program startup time. llvm-svn: 257436
* [libFuzzer] when a new unit is discovered using a dictionary, print all used ↵Kostya Serebryany2016-01-124-30/+35
| | | | | | dictionary entries llvm-svn: 257435
* [libFuzzer] add various debug prints. Also don't mutate based on a cmp trace ↵Kostya Serebryany2016-01-121-5/+28
| | | | | | like (a eq a) or (a neq a) llvm-svn: 257434
* [WebAssembly] Use TSFlags instead of keeping a list of special-case opcodes.Dan Gohman2016-01-124-15/+54
| | | | llvm-svn: 257433
* Simplify. NFC.Rui Ueyama2016-01-122-7/+3
| | | | llvm-svn: 257432
* OrcRemoteTargetServer.h: Suppress a warning. [-Wunused-variable]NAKAMURA Takumi2016-01-121-0/+1
| | | | | FIXME: It may return ErrorOr. llvm-svn: 257431
* lli: Fix warnings. [-Wsign-compare]NAKAMURA Takumi2016-01-121-2/+2
| | | | llvm-svn: 257430
* Get rid of ARM_ELF_SYM_IS_THUMB flag.Stephane Sezer2016-01-121-4/+0
| | | | | | | | | | | | | | Summary: This was used with the old ARM vs. Thumb detection code but is not required anymore. Reviewers: tberghammer, clayborg Subscribers: fjricci, aemerson, lldb-commits, rengolin Differential Revision: http://reviews.llvm.org/D16099 llvm-svn: 257429
* CXX_FAST_TLS calling convention: performance improvement for x86-64.Manman Ren2016-01-128-43/+117
| | | | | | | This is the same change on x86-64 as r255821 on AArch64. rdar://9001553 llvm-svn: 257428
* LoopUnroll: Make canUnrollCompletely static - it doesn't use any state. NFCJustin Bogner2016-01-121-11/+5
| | | | llvm-svn: 257427
* LoopUnroll: Clean up the maze of initialization for unroll parameters. NFCJustin Bogner2016-01-121-199/+141
| | | | | | | | | | The layering of where the various loop unroll parameters are initialized and overridden here was very confusing, making it pretty difficult to tell just how the various sources interacted. Instead, we put all of the initialization logic together in a single function so that it's obvious what overrides what. llvm-svn: 257426
* CXX_FAST_TLS calling convention: performance improvement for ARM.Manman Ren2016-01-129-11/+111
| | | | | | | This is the same change on ARM as r255821 on AArch64. rdar://9001553 llvm-svn: 257424
* [libFuzzer] extend the weak memcmp/strcmp/strncmp interceptors to receive ↵Kostya Serebryany2016-01-123-18/+31
| | | | | | the result of the computations. With that, don't do any mutations if memcmp/etc returned 0 llvm-svn: 257423
* Put the definition of _LIBCPP_DISABLE_UBSAN_UNSIGNED_INTEGER_CHECK in the ↵Marshall Clow2016-01-121-5/+5
| | | | | | right place. llvm-svn: 257422
* Remove dead code.Rui Ueyama2016-01-121-2/+0
| | | | llvm-svn: 257421
* [IRMover] Don't copy personality, etc unless creating defTeresa Johnson2016-01-123-0/+27
| | | | | | | | | | | | | | Function::copyAttributesFrom will copy the personality function, prefix data and prolog data from the source function to the new function, and is invoked when the IRMover copies the function prototype. This puts a reference to a constant in the source module on a function in the dest module, which causes an error when deleting the source module after importing, since the personality function in the source module still has uses (this would presumably also be an issue for the prologue and prefix data). Remove the copies added to the dest copy when creating the new prototype, as they are mapped properly when/if we link the function body. llvm-svn: 257420
* [Orc] XFAIL a few remote-jit test cases that I missed in r257391.Lang Hames2016-01-113-2/+3
| | | | llvm-svn: 257419
* Merge two small functions. NFC.Rui Ueyama2016-01-111-12/+9
| | | | llvm-svn: 257418
* CXX_FAST_TLS calling convention: Add support for ARM on Darwin.Manman Ren2016-01-115-0/+60
| | | | | | rdar://9001553 llvm-svn: 257417
* [WebAssembly] Define WebAssembly-specific relocation codes.Dan Gohman2016-01-1121-52/+112
| | | | | | | | Currently WebAssembly has two kinds of relocations; data addresses and function addresses. This adds ELF relocations for them, as well as an MC symbol kind to indicate which type of relocation is needed. llvm-svn: 257416
* Avoid the deprecated GetVersionEx APIReid Kleckner2016-01-112-10/+19
| | | | | | | | | Apparently the preferred version is the incredibly complicated VerifyVersionInfoW function. Rename the function to avoid potential future name clashes. llvm-svn: 257415
* [LibCallSimplifier] use instruction-level fast-math-flags to transform log callsSanjay Patel2016-01-112-24/+46
| | | | | | | | | | | | | | Also, add tests to verify that we're checking 'fast' on both calls of each transform pair, tighten the CHECK lines, and give the tests more meaningful names. This is a continuation of: http://reviews.llvm.org/rL255555 http://reviews.llvm.org/rL256871 http://reviews.llvm.org/rL256964 http://reviews.llvm.org/rL257400 http://reviews.llvm.org/rL257404 llvm-svn: 257414
* [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/.Justin Lebar2016-01-115-4/+56
| | | | | | | | | | Reviewers: tra Subscribers: cfe-commits, jhen, echristo Differential Revision: http://reviews.llvm.org/D16079 llvm-svn: 257413
* Remove a bugs assert.Rafael Espindola2016-01-112-2/+52
| | | | | | | There is no reason the value being printed has to be positive. Fixes pr25802. llvm-svn: 257412
* Add an Action* member to InputInfo.Justin Lebar2016-01-113-15/+34
| | | | | | | | | | | | | | Summary: The CUDA toolchain needs to know which Actions created which InputInfos, because it needs to attach GPU archs to the various InputInfos. Reviewers: echristo Subscribers: jfb, dschuff, jhen, tra, cfe-commits Differential Revision: http://reviews.llvm.org/D16078 llvm-svn: 257411
* lli-child-target: Introduce a new dependency on RuntimeDyld.NAKAMURA Takumi2016-01-111-0/+1
| | | | llvm-svn: 257410
* Don't define Bytes and String to be the same number on Py2.Zachary Turner2016-01-111-4/+0
| | | | | | This is causing issues with case labels having the same value. llvm-svn: 257409
* Make Driver::BuildJobsForAction return an InputInfo, instead of using an ↵Justin Lebar2016-01-112-44/+31
| | | | | | | | | | | | | | outparam. Summary: Explicit is better than implicit. Reviewers: echristo Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16013 llvm-svn: 257408
* Move ownership of Action objects into Compilation.Justin Lebar2016-01-116-157/+123
| | | | | | | | | | | | | | | | Summary: This makes constructing Action graphs which are DAGs much simpler. It also just simplifies in general the ownership semantics of Actions. Depends on D15910. Reviewers: echristo Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D15911 llvm-svn: 257407
* clang-format: [JS] Teach clang-format about "export interface".Daniel Jasper2016-01-112-1/+6
| | | | llvm-svn: 257406
* Xfail some Arm-Linux specific failuresOmair Javaid2016-01-114-3/+10
| | | | | | | | | | Updated expectedFailureLinux decorator to reflect architecture Marked some triaged failures as xfails on arm with updated expectedFailureLinux decorator Differential revision: http://reviews.llvm.org/D15893 llvm-svn: 257405
* [LibCallSimplifier] don't allow sqrt transform unless all ops are unsafeSanjay Patel2016-01-112-2/+17
| | | | | | | Fix the FIXME added with: http://reviews.llvm.org/rL257400 llvm-svn: 257404
* When a tag is declared in prototype scope in C, if we've decided that itRichard Smith2016-01-113-4/+25
| | | | | | | | | | | | | | redeclares an existing tag but are creating a new declaration anyway (because it has attributes or changes the visibility of the name), don't warn that it won't be visible outside the current scope. That's not true. Also narrow down the set of cases where we create these extra declarations when building modules; previously, all tag declarations but the first in a module header would get this treatment if -fmodules-local-submodule-visibility. (This isn't a functional change, but we try to avoid creating these extra declarations whenever we can.) llvm-svn: 257403
* LoopUnroll: Use the optsize threshold for minsize as wellJustin Bogner2016-01-112-5/+3
| | | | | | | | | | | | Currently we're unrolling loops more in minsize than in optsize, which means -Oz will have a larger code size than -Os. That doesn't make any sense. This resolves the FIXME about this in LoopUnrollPass and extends the optsize test to make sure we use the smaller threshold for minsize as well. llvm-svn: 257402
* more space; NFCSanjay Patel2016-01-111-0/+1
| | | | llvm-svn: 257401
* [LibCallSimplifier] use instruction-level fast-math-flags to transform sqrt ↵Sanjay Patel2016-01-114-44/+35
| | | | | | | | | | | | | | | | | | | | | | | calls This is a continuation of adding FMF to call instructions: http://reviews.llvm.org/rL255555 The intent of the patch is to preserve the current behavior of the transform except that we use the sqrt instruction's 'fast' attribute as a trigger rather than the function-level attribute. But this raises a bug noted by the new FIXME comment. In order to do this transform: sqrt((x * x) * y) ---> fabs(x) * sqrt(y) ...we need all of the sqrt, the first fmul, and the second fmul to be 'fast'. If any of those ops is strict, we should bail out. Differential Revision: http://reviews.llvm.org/D15937 llvm-svn: 257400
* getParent()->getParent() == getFunction() and clang-format ; NFCSanjay Patel2016-01-111-15/+11
| | | | llvm-svn: 257399
* Fix Python 3 issues related to OS plugins.Zachary Turner2016-01-112-12/+14
| | | | | | | | | | * lldb::tid_t was being converted incorrectly, so this is updated to use PythonInteger instead of manual Python Native API calls. * OSPlugin_RegisterContextData was assuming that the result of get_register_data was a string, when in fact it is a bytes. So this method is updated to use PythonBytes to do the work. llvm-svn: 257398
* Introduce a PythonBytes class into PythonDataObjects.Zachary Turner2016-01-113-0/+166
| | | | | | | This class behaves the same as PythonString on Python2, but differently on Python3. Unittests are added as well. llvm-svn: 257397
* don't repeat function names in comments; NFCSanjay Patel2016-01-111-88/+85
| | | | llvm-svn: 257396
* Add a missing error handling to llvm-lto.Rafael Espindola2016-01-112-0/+3
| | | | llvm-svn: 257395
* [WebAssembly] Reorganize address offset folding.Dan Gohman2016-01-111-85/+161
| | | | | | | | | | | | | Always expect tglobaladdr and texternalsym to be wrapped in WebAssemblywrapper nodes. Also, split out a regPlusGA from regPlusImm so that it can special-case global addresses, as they can be folded in more cases. Unfortunately this doesn't enable any new optimizations yet due to SelectionDAG limitations. I'll be submitting changes to the SelectionDAG infrastructure, along with tests, in a separate patch. llvm-svn: 257394
* AMDGPU: Implement {{s|u}}int_to_fp i64 -> f32Matt Arsenault2016-01-115-26/+227
| | | | | | | The old lowering for uint_to_fp failed opencl conformance. It might be OK for fast math mode, but I'm not sure. llvm-svn: 257393
* PR26087: Use nonstandard MSVC extension for VS2015 as well.James Y Knight2016-01-111-4/+4
| | | | | | | | In r256564, I had conditioned the workaround in has_getDecl to only be used for MSVC before the 2015 release, believing that 2015 could handle the standard code. But, that was incorrect. llvm-svn: 257392
* XFAIL the LLI remote JIT tests on Win32.Lang Hames2016-01-1120-5/+20
| | | | llvm-svn: 257391
* [old ELF] Remove AMDGPU targetTom Stellard2016-01-1116-482/+0
| | | | | | | | | | | | Summary: This is no longer needed now that the new ELF implementation supports AMDGPU. Reviewers: ruiu, rafael Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D15954 llvm-svn: 257390
OpenPOWER on IntegriCloud