summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* correct test RUN parametersRobert Lytton2013-08-231-4/+2
| | | | llvm-svn: 189093
* Check for absence of the flag.Bill Wendling2013-08-221-1/+1
| | | | llvm-svn: 189069
* TBAA: add testing case to check typedef can alias.Manman Ren2013-08-211-0/+14
| | | | llvm-svn: 188931
* Don't use mangleCXXRTTIName in TBAA for C code.Manman Ren2013-08-212-1/+10
| | | | | | | | | | | With r185721, calling mangleCXXRTTIName on C code will cause crashes. This commit fixes crashes on C testing cases when turning on struct-path TBAA. For C code, we simply use the Decl name without the context. This can cause two different structs having the same name, and may cause inaccurate but conservative alias results. llvm-svn: 188930
* Update testing case to use FileCheck instead of grep.Manman Ren2013-08-211-3/+9
| | | | llvm-svn: 188929
* [mips][msa] Added fexdo, fexup[lr] builtinsDaniel Sanders2013-08-201-0/+9
| | | | llvm-svn: 188784
* XCore target: Add target specific EmitVAArgRobert Lytton2013-08-191-8/+72
| | | | | | This is so aggregates can be passed as var args too. llvm-svn: 188664
* XCore target: correct test layoutRobert Lytton2013-08-191-5/+19
| | | | llvm-svn: 188663
* Fix the name and the type of the argument for intriniscJuergen Ributzka2013-08-171-2/+2
| | | | | | | | _mm256_broadcastsi128_si256 to align with the Intel documentation. This fixes bug PR 16581 and rdar:14747994. llvm-svn: 188609
* [Mips][msa] Added most builtins from add.a to xoriJack Carter2013-08-151-0/+642
| | | | | | | | | | | | | | | | | | | | Includes: add.a, adds_a, adds_s, adds_u, addv, addvi, andi.b, asub_[su], ave_[su], aver_[su], bclr, bclri, bins[lr], bins[lr]i, bmnzi, bmzi, bneg, bnegi, bset, bseti, c(eq|ne), c(eq|ne)i, cl[et]_[su], cl[et]i_[su], copy_[su].[bhw], div_[su], dotp_[su], dpadd_[su], dpsub_[su], fadd, fceq, fclass, fcl[et], fcne, fdiv, fexp2, ffint_[su], ffql, ffqr, fill, flog2, fmadd, fmax, fmax_a, fmin, fmin_a, fmsub, fmul, frint, fseq, fsle, fslt, fsne, fsqr, fsub, ftint_[su], ftq, ilvev, ilvl, ilvod, ilvr, ldi, frcp, frsqrt, madd_q, maddr_q, maddv, max_[asu], maxi_[su], min_[asu], mini_[su], mod_[su], msub_q, msubr_q, msubv, mul_q, mulr_q, mulv, nloc, nlzc, nori, ori, pckev, pckod, pcnt, sat_[su], shf, sld, sldi, sll, slli, splat, splati, sr[al], sr[al]i, subs_[su], subv, subvi, xori Patch by Daniel Sanders llvm-svn: 188461
* Clang and AArch64 backend patches to support shll/shl and vmovl instructions ↵Hao Liu2013-08-151-0/+228
| | | | | | and ACLE functions llvm-svn: 188452
* CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin2013-08-15101-639/+639
| | | | | | tests fail. llvm-svn: 188447
* Fix xcore tests to use regex.Arnold Schwaighofer2013-08-131-8/+8
| | | | llvm-svn: 188271
* Add XCore targetRobert Lytton2013-08-131-0/+35
| | | | llvm-svn: 188258
* Fix FileCheck --check-prefix lines.Tim Northover2013-08-1211-30/+30
| | | | | | | | | | Various tests had sprung up over the years which had --check-prefix=ABC on the RUN line, but "CHECK-ABC:" later on. This happened to work before, but was strictly incorrect. FileCheck is getting stricter soon though. Patch by Ron Ofir. llvm-svn: 188174
* Add lrint to the list of math builtins. It never sets errno so we can mark ↵Benjamin Kramer2013-08-091-9/+18
| | | | | | it as readnone. llvm-svn: 188065
* Fix alignof computation of large arrays on x86_64.Rafael Espindola2013-08-081-0/+11
| | | | | | | | | | | We were exposing the extra alignment given to large arrays. The new behavior matches gcc, which is a good thing since this is a gcc extension. Thanks to Joerg Sonnenberger for noticing it. While at it, centralize the method description in the .h file. llvm-svn: 187999
* clang-cl: Support the run-time selection options (/MD, /MT et al.)Hans Wennborg2013-08-081-0/+15
| | | | | | | | | | | | These flags set some preprocessor macros and injects a dependency on the runtime library into the object file, which later is picked up by the linker. This also adds a new CC1 flag for adding a dependent library. Differential Revision: http://llvm-reviews.chandlerc.com/D1315 llvm-svn: 187945
* Correctly allign arrays on 32 bit systems.Rafael Espindola2013-08-071-2/+3
| | | | | | | | | | | Before this patch we would align long long int big[1024]; to 4 bytes on 32 bit systems. The problem is that we were only looking at the element type when getLargeArrayMinWidth returned non zero. llvm-svn: 187897
* Add support for passing -1 to __builtin_shufflevector to signify an ↵Craig Topper2013-08-031-1/+8
| | | | | | undefined element value to match IR capabilities. llvm-svn: 187694
* DebugInfo: Don't prefer declarations over definitions in -flimit-debug-info in CDavid Blaikie2013-08-011-0/+11
| | | | | | | | | Without an ODR, the -flimit-debug-info debug info size optimization of emitting declarations for fully defined types when only a declaration is needed by the TU, is incorrect. Emit the full definition whenever it's available in non-C++. llvm-svn: 187611
* AST: Treat inline function declarations in -fms-compatibility as if it were ↵David Majnemer2013-08-011-0/+9
| | | | | | | | in C++ when in C mode This essentially fixes PR16766. llvm-svn: 187586
* AArch64: initial NEON supportTim Northover2013-08-011-0/+3023
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by Ana Pazos - Completed implementation of instruction formats: AdvSIMD three same AdvSIMD modified immediate AdvSIMD scalar pairwise - Completed implementation of instruction classes (some of the instructions in these classes belong to yet unfinished instruction formats): Vector Arithmetic Vector Immediate Vector Pairwise Arithmetic - Initial implementation of instruction formats: AdvSIMD scalar two-reg misc AdvSIMD scalar three same - Intial implementation of instruction class: Scalar Arithmetic - Initial clang changes to support arm v8 intrinsics. Note: no clang changes for scalar intrinsics function name mangling yet. - Comprehensive test cases for added instructions To verify auto codegen, encoding, decoding, diagnosis, intrinsics. llvm-svn: 187568
* Remove the mblaze backend from clang.Rafael Espindola2013-07-251-1/+0
| | | | | | Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html llvm-svn: 187143
* Partial revert of r185568.Eli Bendersky2013-07-241-3/+9
| | | | | | | | r186899 and r187061 added a preferred way for some architectures not to get intrinsic generation for math builtins. So the code changes in r185568 can now be undone (the test remains). llvm-svn: 187079
* [PowerPC64] Fix passing of single-vector-member structs to match ABI.Bill Schmidt2013-07-231-0/+13
| | | | | | | | | | | | | | | | | The 64-bit PowerPC ELF ABI requires a struct that contains a single vector member to be passed in a vector register as though the wrapping struct were not present. Instead we were passing this as a byval struct. The same logic was already present for floating-point arguments, so this patch just extends the logic to handle vector types. The new test case verifies that clang coerces the parameter and annotates it as inreg. Thanks, Bill llvm-svn: 186993
* Make the nomathbuiltin.c test less demanding.Eli Bendersky2013-07-231-7/+1
| | | | | | This should hopefully unbreak the Windows bots at http://bb.pgr.jp llvm-svn: 186906
* Integers which are too large should be an error.Eli Friedman2013-07-232-9/+3
| | | | | | | | Switch some warnings over to errors which should never have been warnings in the first place. (Also, a minor fix to the preprocessor rules for integer literals while I'm here.) llvm-svn: 186903
* Add a -fno-math-builtin option to the Clang -cc1Eli Bendersky2013-07-231-0/+18
| | | | llvm-svn: 186899
* Fix volatile _Complex alignment test on platforms where 64-bit floating ↵JF Bastien2013-07-181-6/+14
| | | | | | | | point isn't 64-bit aligned Add x86-64 triple, and check its datalayout. Also add some comments, and use the new CHECK-LABEL. llvm-svn: 186564
* clang/test/CodeGen/volatile-complex.c: Loosen CHECKs for -Asserts.NAKAMURA Takumi2013-07-171-8/+4
| | | | llvm-svn: 186492
* Propagate alignment for _ComplexJF Bastien2013-07-173-28/+91
| | | | | | | | _Complex load/store didn't have their alignment set properly, which was visible when GCC's torture tests use volatile _Complex. Update some existing tests to check for alignment, and add a new test which also has over-aligned volatile _Complex (since the imaginary part shouldn't be overaligned, only the real part). llvm-svn: 186490
* Fix crash on complex constant zero.Eli Friedman2013-07-161-0/+3
| | | | | | Fixes <rdar://problem/14442543>. llvm-svn: 186452
* Fix test on release builds.Tim Northover2013-07-161-2/+1
| | | | | | | | Unfortunately I don't think there's a good way to validate branch targets on release builds. Fortunately it's a minor part of this test (and based on generic code) so I don't mind dropping it. llvm-svn: 186398
* ARM: implement low-level intrinsics for the atomic exclusive operations.Tim Northover2013-07-161-0/+113
| | | | | | | | | | | | This adds three overloaded intrinsics to Clang: T __builtin_arm_ldrex(const volatile T *addr) int __builtin_arm_strex(T val, volatile T *addr) void __builtin_arm_clrex() The intent is that these do what users would expect when given most sensible types. Currently, "sensible" translates to ints, floats and pointers. llvm-svn: 186394
* Make these tests more robust against IRgen choosing to emit more named metadata.Richard Smith2013-07-145-72/+71
| | | | llvm-svn: 186279
* Changes so that a few tests do not fail when running under guarded malloc.Argyrios Kyrtzidis2013-07-122-4/+4
| | | | | | | Guarded malloc emits some messages at the beginning in stderr when enabled. These messages caused a few tests to fail. llvm-svn: 186219
* clang/test/CodeGen/c11atomics.c: Fix testcase for -Asserts since r186054.NAKAMURA Takumi2013-07-111-1/+1
| | | | llvm-svn: 186055
* Simplify atomic load/store IRGen.Eli Friedman2013-07-112-11/+24
| | | | | | Also fixes a couple minor bugs along the way; see testcases. llvm-svn: 186049
* Reapply an improved version of r180816/180817.Adrian Prantl2013-07-091-2/+1
| | | | | | | | | | | Do not generate VLAs as complex variables any more, as they are now correctly represented as breg+0 locations in the backend. (Paired commit with LLVM: r185966) rdar://problem/13658587 llvm-svn: 185967
* clang/test/CodeGen/2008-01-25-ByValReadNone.c: Add explicit -triple ↵NAKAMURA Takumi2013-07-081-1/+2
| | | | | | | | | | | x86_64-unknown-unknown. It would emit @llvm.memcpy with "-triple x86_64-(mingw32|win32)" and had been failing since Nick's r185735. ; Function Attrs: nounwind declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1) #1 llvm-svn: 185796
* Update test for change in r185735.Nick Lewycky2013-07-061-1/+1
| | | | llvm-svn: 185736
* Add 'not' to commands that are expected to fail.Rafael Espindola2013-07-043-3/+3
| | | | | | | This is at least good documentation, but also opens the possibility of using pipefail. llvm-svn: 185652
* Looks like {{.*}} doesn't match the empty string. Fix test.Rafael Espindola2013-07-041-1/+1
| | | | llvm-svn: 185650
* Relax pattern to accept a signext on ppc64.Rafael Espindola2013-07-041-1/+1
| | | | llvm-svn: 185649
* Replace 'grep foo | count 0' with 'not grep foo'.Rafael Espindola2013-07-043-6/+6
| | | | | | This avoids depending on pipefail not being used. llvm-svn: 185648
* Remove test for the old debug format which was XFAILed since 2009.Rafael Espindola2013-07-041-18/+0
| | | | llvm-svn: 185647
* Add missing expected-warning.Rafael Espindola2013-07-041-1/+1
| | | | llvm-svn: 185644
* Remove unused -verify.Rafael Espindola2013-07-041-1/+1
| | | | llvm-svn: 185641
* clang -cc1 has no -fno-unit-at-a-time or -funit-at-a-time. Fix test.Rafael Espindola2013-07-041-2/+1
| | | | llvm-svn: 185639
OpenPOWER on IntegriCloud