| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
| |
And refactor to have just one place in code that sets up the empty
pragma handlers.
llvm-svn: 196372
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'd misunderstood getIndirect() to mean that the argument should be passed
as a pointer at the ABI level, with the ByVal argument choosing caller-copy
semantics over no-caller-copy (callee-copy-on-write) semantics. But
getIndirect(x) actually means that x is passed by pointer at the IR
level but (at least on all other targets I looked at) directly at the
ABI level. getIndirect(x, false) selects a pointer to a caller-made
copy, which is what SystemZ was aiming for.
This fixes a miscompilation of c-index-test. Structure arguments were being
passed by pointer, but no copy was being made, so a write in the callee
stomped over a caller's local variable.
llvm-svn: 196370
|
| |
|
|
| |
llvm-svn: 196369
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We would lose track of the mangling number assigned to the original
declaration which would cause us to create manglings that didn't match
the Itanium C++ specification.
e.g. Two static fields with the same name inside of a function template
would receive the same mangling with LLVM fixing up the second field so
they wouldn't collide. This would create an incompatibility with other
compilers following the Itanium ABI.
I've confirmed that the new mangling is identical to the ones generated
by icc and gcc.
N.B. This was uncovered while working on Microsoft mangler.
llvm-svn: 196368
|
| |
|
|
|
|
| |
And add the proper fix.
llvm-svn: 196367
|
| |
|
|
| |
llvm-svn: 196366
|
| |
|
|
|
|
|
| |
This currently breaks clang/test/CodeGen/code-coverage.c. The root cause
is that the newly introduced access to Funcs[j] is out of bounds.
llvm-svn: 196365
|
| |
|
|
| |
llvm-svn: 196364
|
| |
|
|
|
|
|
|
|
| |
If /functionpadmin is specified, the linker is supposed to make room at the
beginning of each function, so that self-modifying program would easily
hotpatch existing functions. Since I'm not sure if this feature is really used,
I'll make LLD to ignore the option for now.
llvm-svn: 196363
|
| |
|
|
| |
llvm-svn: 196362
|
| |
|
|
| |
llvm-svn: 196361
|
| |
|
|
| |
llvm-svn: 196360
|
| |
|
|
| |
llvm-svn: 196359
|
| |
|
|
|
|
|
| |
The function checksums are hashed from the concatenation of the function
name and line number.
llvm-svn: 196358
|
| |
|
|
| |
llvm-svn: 196357
|
| |
|
|
|
|
|
| |
Added additional checks for the Identifier, CfgChecksum and Name for
each GCOVFunction. Also added function names in error messages.
llvm-svn: 196356
|
| |
|
|
|
|
| |
const'. Thanks to Nico for the catch
llvm-svn: 196355
|
| |
|
|
| |
llvm-svn: 196354
|
| |
|
|
|
|
|
|
| |
This splits the file-scope read() function into readGCNO() and
readGCDA(). Also broke file format read into functions that first read
the file type, then check the version.
llvm-svn: 196353
|
| |
|
|
|
|
| |
This patch fixes PR16989.
llvm-svn: 196352
|
| |
|
|
|
|
| |
In delayed template parsing mode, adjust the template depth counter for each template parameter list associated with an out of line member template specialization.
llvm-svn: 196351
|
| |
|
|
| |
llvm-svn: 196350
|
| |
|
|
| |
llvm-svn: 196349
|
| |
|
|
|
|
| |
nvptx64-registered-target". "nvptx" should imply it.
llvm-svn: 196348
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In trunk, we can use features as below:
aarch64-registered-target
hexagon-registered-target
msp430-registered-target
r600-registered-target
systemz-registered-target
xcore-registered-target
Each of them, as below, implies corresponding subtargets:
arm-registered-target -- arm, thumb
mips-registered-target -- mips, mips64, mips64el, mipsel
nvptx-registered-target -- nvptx, nvptx64
sparc-registered-target -- sparc, sparcv9
x86-registered-target -- x86, x86-64
They will be renamed:
cppbackend-registered-target -- was "cpp". Unused in trunk.
powerpc-registered-target -- was "ppc32", "ppc64" and "ppc64le".
The feature "asserts" is also taken from llvm-config.
llvm-svn: 196347
|
| |
|
|
| |
llvm-svn: 196346
|
| |
|
|
|
|
| |
Thanks for j`ey and Sean Silva for noticing it.
llvm-svn: 196344
|
| |
|
|
|
|
|
|
|
| |
It appears to be referring to nonexistent entities. This must be a
carry-over from an older version of the document.
Patch by Mikael Lyngvig!
llvm-svn: 196342
|
| |
|
|
| |
llvm-svn: 196341
|
| |
|
|
|
|
| |
Should fix the atom buildbot.
llvm-svn: 196340
|
| |
|
|
| |
llvm-svn: 196339
|
| |
|
|
| |
llvm-svn: 196338
|
| |
|
|
|
|
| |
to a variable template specialization.
llvm-svn: 196337
|
| |
|
|
|
|
| |
Also update docs to reflect recently changed -i inplace edit behaviour.
llvm-svn: 196336
|
| |
|
|
|
|
| |
nested-name-specifier.
llvm-svn: 196335
|
| |
|
|
| |
llvm-svn: 196334
|
| |
|
|
|
|
| |
simple-template-ids (eg, 'operator+<int>') in weird places.
llvm-svn: 196333
|
| |
|
|
| |
llvm-svn: 196332
|
| |
|
|
|
|
|
|
|
| |
this completes the basic port of ARM constant islands to Mips16.
More testing, code review, cleanup is in order but basically everything
seems to be working. A bug in gas is preventing some of the runtime
testing but I hope to resolve this soon.
llvm-svn: 196331
|
| |
|
|
|
|
| |
Add --assertion-mode to llvm-config. It emits ON or OFF according to NDEBUG.
llvm-svn: 196329
|
| |
|
|
|
|
|
|
| |
to let llvm-lit.py --use-processes work.
llvm-lit needs suffix.py for multiprocess to find a main module.
llvm-svn: 196328
|
| |
|
|
| |
llvm-svn: 196323
|
| |
|
|
|
|
| |
Thanks to Ed and Greg for catching the incorrect logging statements.
llvm-svn: 196322
|
| |
|
|
| |
llvm-svn: 196321
|
| |
|
|
|
|
| |
libxml2.
llvm-svn: 196320
|
| |
|
|
|
|
|
|
| |
does not
override all of the designated initializers of its superclass.
llvm-svn: 196319
|
| |
|
|
|
|
|
|
|
|
|
| |
super another initializer and when the implementation does not delegate to
another initializer via a call on 'self'.
A secondary initializer is an initializer method not marked as a designated
initializer within a class that has at least one initializer marked as a
designated initializer.
llvm-svn: 196318
|
| |
|
|
|
|
|
|
| |
calls on
super an initializer that is not a designated one or any initializer on self.
llvm-svn: 196317
|
| |
|
|
|
|
|
|
| |
does not chain to
an init method that is a designated initializer for the superclass.
llvm-svn: 196316
|
| |
|
|
|
|
|
|
|
|
| |
designated initializers of an interface.
If the interface declaration does not have methods marked as designated
initializers then the interface inherits the designated initializers of
its super class.
llvm-svn: 196315
|