| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Libc++ currently implements the `ATOMIC_<TYPE>_LOCK_FREE` macros using the `__GCC_ATOMIC_<TYPE>_LOCK_FREE` macros. However these are not available when MSVC compatibility is enabled even though C11 `_Atomic` is. This prevents libc++ from correctly implementing `ATOMIC_<TYPE>_LOCK_FREE`.
This patch adds an alternative spelling `__CLANG_ATOMIC_<TYPE>_LOCK_FREE` that is enabled with `-fms-compatibility`.
Reviewers: rsmith, aaron.ballman, majnemer, zturner, compnerd, jfb, rnk
Reviewed By: rsmith
Subscribers: BillyONeal, smeenai, jfb, cfe-commits, dschuff
Differential Revision: https://reviews.llvm.org/D32265
llvm-svn: 300914
|
| |
|
|
|
|
|
| |
This macro is defined for arm-none-eabi as of r266625, but it should also be
defined for eabihf and aarch64.
llvm-svn: 300549
|
| |
|
|
|
|
|
|
|
| |
with disabling it as well as disabling all vsx specific features when
turning off altivec.
Fixes PR32663.
llvm-svn: 300395
|
| |
|
|
|
|
|
|
|
|
| |
Intel disabled the feature on some haswell and broadwell processors:
http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/core-m-processor-family-spec-update.pdf
the -mrtm option will still work normally.
llvm-svn: 298956
|
| |
|
|
|
|
| |
Adjust and add a test for the 32-bit side.
llvm-svn: 298778
|
| |
|
|
| |
llvm-svn: 298770
|
| |
|
|
|
|
| |
well.
llvm-svn: 298769
|
| |
|
|
|
|
|
|
| |
This typically is only for a new enough linker (bfd >= 2.16.2 or gold), but
our ppc suppport post-dates this and it should work on all linux platforms. It
is guaranteed to work on all elfv2 platforms.
llvm-svn: 298765
|
| |
|
|
|
|
| |
than the default of 8 in clang, fix and update tests accordingly.
llvm-svn: 298761
|
| |
|
|
|
|
|
| |
The le triple didn't exist until power8, so use that as a default (this
also matches what gcc does).
llvm-svn: 298759
|
| |
|
|
|
|
| |
available by default on those cpus and configurations.
llvm-svn: 298307
|
| |
|
|
| |
llvm-svn: 298299
|
| |
|
|
| |
llvm-svn: 298006
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Broadcom Vulcan is now Cavium ThunderX2T99.
LLVM Bugzilla: http://bugs.llvm.org/show_bug.cgi?id=32113
Corresponding LLVM change: https://reviews.llvm.org/rL297190
Changes to clang to support the change.
Patch by Joel Jones
llvm-svn: 297227
|
| |
|
|
| |
llvm-svn: 297098
|
| |
|
|
|
|
| |
across archs.
llvm-svn: 296256
|
| |
|
|
| |
llvm-svn: 295786
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Historically, NetBSD, FreeBSD and OpenBSD have defined the macro ABICALLS in
the preprocessor when -mabicalls is in effect.
Mainline GCC later defined __mips_abicalls when -mabicalls is in effect.
This patch teaches the preprocessor to define these macros when appropriate.
NetBSD does not require the ABICALLS macro.
This resolves PR/31694.
Thanks to Sean Bruno for highlighting this issue!
Reviewers: slthakur, seanbruno
Reviewed By: seanbruno
Subscribers: joerg, brad, emaste, seanbruno, cfe-commits
Differential Revision: https://reviews.llvm.org/D29032
llvm-svn: 295728
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: rengolin, t.p.northover
Reviewed By: t.p.northover
Subscribers: aemerson, llvm-commits
Differential Revision: https://reviews.llvm.org/D30100
llvm-svn: 295647
|
| |
|
|
|
|
| |
platforms to match what other compilers produce.
llvm-svn: 295156
|
| |
|
|
|
|
|
|
|
|
|
| |
This is a followup change to add v7ve support to clang for gcc
compatibility. Please see r294661.
Patch by Manoj Gupta.
Differential Revision: https://reviews.llvm.org/D29773
llvm-svn: 294662
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
1. Adds the command line flag for clzero.
2. Includes the clzero flag under znver1.
3. Defines the macro for clzero.
4. Adds a new file which has the intrinsic definition for clzero instruction.
Patch by Ganesh Gopalasubramanian with some additional tests from me.
Differential revision: https://reviews.llvm.org/D29386
llvm-svn: 294559
|
| |
|
|
| |
llvm-svn: 294534
|
| |
|
|
|
|
| |
__PREFETCHWT1__ define to match gcc.
llvm-svn: 294424
|
| |
|
|
| |
llvm-svn: 294423
|
| |
|
|
| |
llvm-svn: 294419
|
| |
|
|
|
|
|
|
| |
match gcc.
In the future, we should also add a clwb intrinsic to the backend, a frontend builtin, and an instrinsic header file.
llvm-svn: 294416
|
| |
|
|
|
|
| |
__CLFLUSHOPT__ define to match gcc.
llvm-svn: 294411
|
| |
|
|
|
|
|
| |
This reverts commit SVN r294148. Seems that it was mistaken, and GCC
does still define `__unix` and `unix` when in GNU mode.
llvm-svn: 294332
|
| |
|
|
|
|
|
|
|
|
|
|
| |
GCC 7 will predefine two new macros on s390x:
- __ARCH__ indicates the ISA architecture level
- __VX__ indicates that the vector facility is available
This adds those macros to clang as well to ensure continued
compatibility with GCC.
llvm-svn: 294197
|
| |
|
|
|
|
|
|
| |
GCC does not generate `__unix` nor `unix` macros. The latter already
intrudes into the user's namespace and should be avoided. Use the
canonical spelling of `__unix__` across all the targets.
llvm-svn: 294148
|
| |
|
|
|
|
|
|
|
|
| |
be defined for non Objective-C code as well
rdar://29794915
Differential Revision: https://reviews.llvm.org/D28349
llvm-svn: 292617
|
| |
|
|
|
|
| |
Thanks Dimitry Andric for the report and fix!
llvm-svn: 292032
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch enables the following
1. AMD family 17h architecture using "znver1" tune flag (-march, -mcpu).
2. ISAs that are enabled for "znver1" architecture.
3. Checks ADX isa from cpuid to identify "znver1" flag when -march=native is used.
4. ISAs FMA4, XOP are disabled as they are dropped from amdfam17.
5. For the time being, it uses the btver2 scheduler model.
6. Test file is updated to check this flag.
This is linked to llvm review item https://reviews.llvm.org/D28017
Patch by Ganesh Gopalasubramanian. Additional test cases added by Craig Topper.
Reviewers: RKSimon, craig.topper
Subscribers: cfe-commits, RKSimon, ashutosh.nema, llvm-commits
Differential Revision: https://reviews.llvm.org/D28018
llvm-svn: 291544
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compilation.
Summary:
CUDA lets users share structs between the host and device, so for that
and other reasons, primitive types such as ptrdiff_t should be the same
on both sides of the compilation.
Our code to do this wasn't entirely successful. In particular, we did a
bunch of work during the NVPTXTargetInfo constructor, only to override
it in the NVPTX{32,64}TargetInfo constructors. It worked well enough on
Linux and Mac, but Windows is LLP64, which is different enough to break
it.
This patch removes the NVPTX{32,64}TargetInfo classes entirely and fixes
the bug described above.
Reviewers: tra
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D28322
llvm-svn: 291135
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Authored by Senthil Kumar Selvaraj
This patch adds barebones support in Clang for the (experimental) AVR target. It uses the integrated assembler for assembly, and the GNU linker for linking, as lld doesn't know about the target yet.
The DataLayout string is the same as the one in AVRTargetMachine.cpp. The alignment specs look wrong to me, as it's an 8 bit target and all types only need 8 bit alignment. Clang failed with a datalayout mismatch error when I tried to change it, so I left it that way for now.
Reviewers: rsmith, dylanmckay, cfe-commits, rengolin
Subscribers: rengolin, jroelofs, wdng
Differential Revision: https://reviews.llvm.org/D27123
llvm-svn: 291082
|
| |
|
|
|
|
|
| |
FPv5 is in Cortex-M7 and the 64-bit CPUs when running in 32-bit mode. The name
is from the Cortex-M7 TRM.
llvm-svn: 290268
|
| |
|
|
| |
llvm-svn: 289614
|
| |
|
|
|
|
|
|
|
|
|
| |
It should already be handled but a typo in the LANGSTANDARD() definition
was introduced in r147220.
Patch by Alexander Richardson, test case by me.
Differential Revision:https://reviews.llvm.org/D27427
llvm-svn: 288793
|
| |
|
|
|
|
|
| |
Run clang -cc1 -E instead of -S, in an attempt to make this test work
cross-platform.
llvm-svn: 287292
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This used to work because system headers are found in a (somewhat)
predictable set of locations on Linux. But this is not the case on
MacOS; without this change, we don't look in the right places for our
headers when doing device-side compilation on Mac.
Reviewers: tra
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D26776
llvm-svn: 287286
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Re-introduce r285411.
Implement the -dI as supported by GCC: Output ‘#include’ directives in addition
to the result of preprocessing.
This change aims to add this option, pass it through to the preprocessor via
the options class, and when inclusions occur we output some information (+ test
cases).
Patch by Steve O'Brien!
Differential Revision: https://reviews.llvm.org/D26089
llvm-svn: 287275
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Just like gcc, we should have the -Og option as more and more software are using it:
https://llvm.org/bugs/show_bug.cgi?id=20765
Reviewers: echristo, dberlin, dblaikie, keith.walker.arm, rengolin
Subscribers: aprantl, friss, mehdi_amini, RKSimon, probinson, majnemer, cfe-commits
Differential Revision: https://reviews.llvm.org/D24998
llvm-svn: 286602
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This macro should be defined only when the user directly specifies an
API level as part of an Android target. For any regular Android target,
we leave this macro undefined.
Bug: https://llvm.org/bugs/show_bug.cgi?id=30940
Reviewers: eugenis, pirama
Subscribers: tberghammer, cfe-commits, pirama, eugenis, danalbert
Differential Revision: https://reviews.llvm.org/D26491
llvm-svn: 286543
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D26286
llvm-svn: 286376
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
set is also enabled.
Summary: This is needed to make the v64i8 and v32i16 types legal for the 512-bit VBMI instructions. Fixes PR30912.
Reviewers: delena, zvi
Subscribers: RKSimon, cfe-commits
Differential Revision: https://reviews.llvm.org/D26306
llvm-svn: 286340
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For compatibility with other compilers on the platform, allow specifying
levels of the z/Architecture instead of model names with -march. In
particular, the following aliases are now supported:
-march=arch8 equals -march=z10
-march=arch9 equals -march=z196
-march=arch10 equals -march=zEC12
-march=arch11 equals -march=z13
This parallels the equivalent (and prerequisite) LLVM change in r285577.
llvm-svn: 285578
|
| |
|
|
|
|
|
| |
This reverts r285411. Tests failing on
http://lab.llvm.org:8011/builders/clang-x86-windows-msvc2015/builds/141
llvm-svn: 285416
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement the -dI as supported by GCC: Output ‘#include’ directives in addition
to the result of preprocessing.
This change aims to add this option, pass it through to the preprocessor via
the options class, and when inclusions occur we output some information (+ test
cases).
Patch by Steve O'Brien!
Differential Revision: https://reviews.llvm.org/D25153
llvm-svn: 285411
|
| |
|
|
|
|
|
|
|
|
|
| |
r276653 suppressed the pragma once warning when generating a PCH file.
This patch extends that to any main file for which clang is told (with
the -x option) that it's a header file. It will also suppress the
warning "#include_next in primary source file".
Differential Revision: http://reviews.llvm.org/D25989
llvm-svn: 285295
|