- May 08, 2013
-
-
Ulrich Weigand authored
[PowerPC] Add some missing PPC64 relocs All R_PPC_... relocs should also be present (using the same number) under the corresponding R_PPC64_... name. The latter were missing for a couple of cases, which this patch adds. This is not a big problem when emitting the reloc, because we can just use the R_PPC_... define instead. But it is a problem when *dumping* relocations e.g. using llvm-readobj, because this will expect only R_PPC64_... values when inspecting a ppc64 ELF file. llvm-svn: 181451
-
Ulrich Weigand authored
[PowerPC] Fix regression in generating @ha/@l relocs The patch I committed as revision 167864 introduced a regression that causes LLVM to no longer generate appropriate relocs for @ha/@l symbol references (but fail an assertion instead). This is fixed here by re-enabling support for the VK_PPC_GAS_HA16/ VK_PPC_GAS_LO16 variant kinds (and their Darwin variants) in PPCELFObjectWriter.cpp. Tested by running projects/test-suite in -m32 mode with the integrated assembler forced on. A standalone test case will be committed shortly as well. llvm-svn: 181450
-
Bill Schmidt authored
This fixes bug 15821 similarly to the powerpc64-linux fix for bug 14779. Patch by David Fang. llvm-svn: 181449
-
Matt Kopec authored
Also mark one of the tests as expected fail on Linux due to the debian fix. llvm-svn: 181448
-
Matt Kopec authored
llvm-svn: 181447
-
Daniel Malea authored
- Played with the current dual run lock implementation for a few days, noticed no regressions, so enabling in trunk so we see if any problems are detected by buildbots. llvm-svn: 181446
-
Daniel Malea authored
- verify that backtraces for stacks that include functions which contain illegal instructions are correct, and that variables in said functions can be printed. llvm-svn: 181442
-
Daniel Malea authored
- Using __builtin_trap confuses the stack unwinder - __builtin_trap specific test will be added shortly llvm-svn: 181441
-
Peter Collingbourne authored
llvm-svn: 181440
-
Daniel Jasper authored
With style where the *s go with the type: Before: typedef bool* (Class:: *Member)() const; After: typedef bool* (Class::*Member)() const; llvm-svn: 181439
-
Daniel Jasper authored
Before: int(S::*func)(void *); After: int (S::*func)(void *); llvm-svn: 181438
-
Stepan Dyatkovskiy authored
llvm-svn: 181437
-
Peter Collingbourne authored
This change moves to a model where the error value of a system call is potentially contained in the return value itself rather than being implicit in errno. The helper function internal_iserror can be used to extract the error value from a return value. On platforms other than Linux/x86_64 this still uses errno, but other platforms are free to port their error handling to this new model. Differential Revision: http://llvm-reviews.chandlerc.com/D756 llvm-svn: 181436
-
Richard Sandiford authored
llvm-svn: 181434
-
Reid Kleckner authored
As suggested by Dmitri Gribenko. llvm-svn: 181433
-
Richard Sandiford authored
llvm-svn: 181431
-
Daniel Jasper authored
If the LHS of a binary expression is broken, clang-format should also break after the operator as otherwise: - The RHS can be easy to miss - It can look as if clang-format doesn't understand operator precedence Before: bool aaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa != bbbbbbbbbbbbbbbbbb && ccccccccc == ddddddddddd; After: bool aaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa != bbbbbbbbbbbbbbbbbb && ccccccccc == ddddddddddd; As an additional note, clang-format would also be ok with the following formatting, it just has a higher penalty (IMO correctly so). bool aaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa != bbbbbbbbbbbbbbbbbb && ccccccccc == ddddddddddd; llvm-svn: 181430
-
Sergey Matveev authored
llvm-svn: 181429
-
Sergey Matveev authored
llvm-svn: 181428
-
Reid Kleckner authored
Summary: Most of this change is wiring the pragma all the way through from the lexer, parser, and sema to codegen. I considered adding a Decl AST node for this, but it seemed too heavyweight. Mach-O already uses a metadata flag called "Linker Options" to do this kind of auto-linking. This change follows that pattern. LLVM knows how to forward the "Linker Options" metadata into the COFF .drectve section where these flags belong. ELF support is not implemented, but possible. This is related to auto-linking, which is http://llvm.org/PR13016. CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D723 llvm-svn: 181426
-
Michel Danzer authored
Adapted from the llvm.SI.sample test. Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 181425
-
Sergey Matveev authored
llvm-svn: 181424
-
Hal Finkel authored
The floating-point record forms on PPC don't set the condition register bits based on a comparison with zero (like the integer record forms do), but rather based on the exception status bits. llvm-svn: 181423
-
Peter Collingbourne authored
This is the first in a sequence of changes designed to eliminate the libc dependency in sanitizer_common. The main motivation for these changes is to be able to provide an alternative for the current interceptor-based technique for instrumenting functions in libc. In this new technique, we compile libc with instrumentation. This has the potential advantages of being more accurate than interception and reducing the amount of custom code required for each libc function. As a side effect of this, we cannot depend on libc in the sanitizer runtime due to mutual dependency issues. This change disables the GCC stack protector, which introduces a libc dependency and is enabled by default in Ubuntu. Differential Revision: http://llvm-reviews.chandlerc.com/D755 llvm-svn: 181422
-
Daniel Jasper authored
Before: aaaaaaaa:: aaaaaaaa:: aaaaaaaa(); After: aaaaaaaa:: aaaaaaaa:: aaaaaaaa(); The reason for the change is that: a) we are not sure which is better b) it is a really rare edge case c) it simplifies the code d) it currently causes problems with memoization llvm-svn: 181421
-
Mihai Popa authored
The reference encoding is correct, but written in the wrong byte order (these are Thumb tests, while the reference is in ARM byte order). llvm-svn: 181420
-
Bill Wendling authored
llvm-svn: 181418
-
Bill Wendling authored
llvm-svn: 181402
-
Nick Lewycky authored
by switching to a ValueMap. Patch by Andrea DiBiagio! llvm-svn: 181397
-
Timur Iskhodzhanov authored
llvm-svn: 181396
-
David Majnemer authored
Fold (xor (and x, y), y) -> (and (not x), y) This removes an opportunity for a constant to appear twice. llvm-svn: 181395
-
David Blaikie authored
Basic support is implemented here - it still doesn't account for declared-but-not-defined variables or functions. It cannot handle out of order (declared, 'using', then defined) cases for variables, but can handle that for functions (& can handle declared, 'using'd, and not defined at all cases for types). llvm-svn: 181393
-
David Blaikie authored
This provides basic functionality for imported declarations. For subprograms and types some amount of lazy construction is supported (so the definition of a function can proceed the using declaration), but it still doesn't handle declared-but-not-defined functions (since we don't generally emit function declarations). Variable support is really rudimentary at the moment - simply looking up the existing definition with no support for out of order (declaration, imported_module, then definition). llvm-svn: 181392
-
David Blaikie authored
llvm-svn: 181391
-
John McCall authored
More of rdar://13200889. llvm-svn: 181390
-
Richard Smith authored
llvm-svn: 181389
-
Richard Smith authored
llvm-svn: 181388
-
Sean Callanan authored
in the underlying llvm::JITMemoryManager API. llvm-svn: 181387
-
Jim Ingham authored
range, it should set the error in the Error passed into the function. llvm-svn: 181386
-
Ted Kremenek authored
llvm-svn: 181385
-