summaryrefslogtreecommitdiffstats
path: root/clang/utils/TableGen
Commit message (Collapse)AuthorAgeFilesLines
* Store the warning option corresponding to a diagnostics as an index into the ↵Benjamin Kramer2012-02-151-5/+23
| | | | | | | | option table instead of storing the name. Another 8 bytes + relocation removed from every diagnostic on x86_64. llvm-svn: 150615
* drop more llvm:: prefixes on SmallString<>Dylan Noblesmith2012-02-131-1/+1
| | | | | | More cleanup after r149799. llvm-svn: 150380
* Remove stray semi-colon.Daniel Dunbar2012-02-101-1/+1
| | | | llvm-svn: 150231
* Kill the brief and full explanation fields from StaticDiagInfoRec. They were ↵Benjamin Kramer2012-02-091-8/+0
| | | | | | | | unused and wasted space for nothing. - per PR11952. llvm-svn: 150199
* Move instantiateTemplateAttribute into the sema namespace, make helpers static.Benjamin Kramer2012-02-061-2/+6
| | | | llvm-svn: 149864
* Delayed template instantiation of late-parsed attributes.DeLesley Hutchins2012-01-201-1/+6
| | | | llvm-svn: 148595
* Instantiate dependent attributes when instantiating templates.DeLesley Hutchins2012-01-203-3/+162
| | | | llvm-svn: 148592
* Remove unreachable code in Clang. (replace with llvm_unreachable where ↵David Blaikie2012-01-171-11/+1
| | | | | | appropriate or when GCC requires it) llvm-svn: 148292
* Remove unnecessary default cases in switches over enums.David Blaikie2012-01-171-3/+0
| | | | | | This allows -Wswitch-enum to find switches that need updating when these enums are modified. llvm-svn: 148281
* CodeInit was replaced by StringInit.Jakob Stoklund Olesen2012-01-131-3/+1
| | | | llvm-svn: 148095
* Remove unused include of VectorExtras.h.Benjamin Kramer2012-01-071-1/+0
| | | | llvm-svn: 147737
* Relax type checking for a few Neon intrinsics. <rdar://problem/10538555>Bob Wilson2011-12-201-0/+11
| | | | | | | | | | | | Not long ago, I tightened up the type checking for pointer arguments of Neon intrinsics to match the specifications provided by ARM. One consequence was that it became impossible to access the unaligned versions of a few Neon load/store operations. Since there are just a few of these intrinsics where it makes a difference, I think it's better to relax the type checking than to either introduce new non-standard unaligned intrinsics or to disallow intrinsics for the unaligned operations. llvm-svn: 146963
* Unweaken vtables as per ↵David Blaikie2011-12-201-1/+1
| | | | | | http://llvm.org/docs/CodingStandards.html#ll_virtual_anch llvm-svn: 146959
* Add support for pretty-printing attributes, from Richard Membarth!Douglas Gregor2011-11-191-0/+67
| | | | llvm-svn: 145002
* Fix Neon builtin pointer argument checking for "sret" builtins.Bob Wilson2011-11-161-6/+24
| | | | | | | | | | | The code for checking Neon builtin pointer argument types was assuming that there would only be one pointer argument. But, for vld2-4 builtins, the first argument is a special sret pointer where the result will be stored. So, instead of scanning all the arguments to find a pointer, have TableGen figure out the index of the pointer argument that needs checking. That's better than scanning all the arguments regardless. <rdar://problem/10448804> llvm-svn: 144834
* Validate DiagGroup names in TableGen, they're used as command line arguments ↵Benjamin Kramer2011-11-151-0/+4
| | | | | | so we don't want shell meta chars in there. llvm-svn: 144645
* Check pointer types for arguments of Neon load/store macros. rdar://9958031Bob Wilson2011-11-081-10/+18
| | | | | | | | | | | The Neon load/store intrinsics need to be implemented as macros to avoid hiding alignment attributes on the pointer arguments, and the macros can only evaluate those pointer arguments once (in case they have side effects), so it has been hard to get the right type checking for those pointers. I tried various alternatives in the arm_neon.h header, but it's much more straightforward to just check directly in Sema. llvm-svn: 144075
* Clean up type flags for overloaded Neon builtins. No functional change.Bob Wilson2011-11-082-13/+43
| | | | | | | | | This patch just adds a simple NeonTypeFlags class to replace the various hardcoded constants that had been used until now. Unfortunately I couldn't figure out a good way to avoid duplicating that class between clang and TableGen, but since it's small and rarely changes, that's not so bad. llvm-svn: 144054
* Use StringRef's case transformation methods.Benjamin Kramer2011-11-061-2/+1
| | | | llvm-svn: 143889
* Update the CMake build for clang-tblgen to reflect that it directlyChandler Carruth2011-11-021-0/+1
| | | | | | | depends on the Support library rather than relying on TableGen's transitive dependency. llvm-svn: 143532
* Add __nodebug__ attribute to functions in arm_neon.hBob Wilson2011-10-141-1/+1
| | | | | | This matches what we do for Intel vector intrinsics. <rdar://problem/10280207> llvm-svn: 141958
* Constant expression evaluation refactoring:Richard Smith2011-10-101-1/+1
| | | | | | | | | | | - Remodel Expr::EvaluateAsInt to behave like the other EvaluateAs* functions, and add Expr::EvaluateKnownConstInt to capture the current fold-or-assert behaviour. - Factor out evaluation of bitfield bit widths. - Fix a few places which would evaluate an expression twice: once to determine whether it is a constant expression, then again to get the value. llvm-svn: 141561
* Make clang-tblgen's Makefile independent of Clang's top-level Makefile,Peter Collingbourne2011-10-081-2/+2
| | | | | | | to avoid having to make it available for the cross build when it builds only clang-tblgen. llvm-svn: 141453
* Add the Clang tblgen backends to Clang, and flip the switch to causePeter Collingbourne2011-10-0615-0/+4098
the build systems to use clang-tblgen. llvm-svn: 141291
OpenPOWER on IntegriCloud