summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/visibility-inlines-hidden.cpp
Commit message (Collapse)AuthorAgeFilesLines
* R34811: Allow visibilities other than 'default' for VisibleNoLinkage entities.Richard Smith2017-10-031-0/+13
| | | | llvm-svn: 314754
* Make '-disable-llvm-optzns' an alias for '-disable-llvm-passes'.Chandler Carruth2016-12-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Much to my surprise, '-disable-llvm-optzns' which I thought was the magical flag I wanted to get at the raw LLVM IR coming out of Clang deosn't do that. It still runs some passes over the IR. I don't want that, I really want the *raw* IR coming out of Clang and I strongly suspect everyone else using it is in the same camp. There is actually a flag that does what I want that I didn't know about called '-disable-llvm-passes'. I suspect many others don't know about it either. It both does what I want and is much simpler. This removes the confusing version and makes that spelling of the flag an alias for '-disable-llvm-passes'. I've also moved everything in Clang to use the 'passes' spelling as it seems both more accurate (*all* LLVM passes are disabled, not just optimizations) and much easier to remember and spell correctly. This is part of simplifying how Clang drives LLVM to make it cleaner to wire up to the new pass manager. Differential Revision: https://reviews.llvm.org/D28047 llvm-svn: 290392
* CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin2013-08-151-19/+19
| | | | | | tests fail. llvm-svn: 188447
* Disable caching of visibility.Rafael Espindola2013-01-121-1/+16
| | | | | | | | | | | | | | The testcase in pr14929 shows that this is extremely hard to do. If we choose to apply the attribute, that causes the visibility of some decls to change and that can happen really late (during codegen). Current gcc warns and ignores the attribute in this testcase with a warning. This suggest that the correct solution is to find a point in the compilation where we can compute the visibility and * assert it was never computed before * reject any attempts to compute it again in the future (with warnings). llvm-svn: 172305
* Add 171048 back but invalidate the cache of all redeclarations when settingRafael Espindola2012-12-251-0/+12
| | | | | | | | | | | | | | | | | | the body of a functions. The problem was that hasBody looks at the entire chain and causes problems to -fvisibility-inlines-hidden if the cache was not invalidated. Original message: Cache visibility of decls. This unifies the linkage and visibility caching. I first implemented this when working on pr13844, but the previous fixes removed the performance advantage of this one. This is still a step in the right direction for making linkage and visibility cheap to use. llvm-svn: 171053
* A number of test cases assume that an "int" parameter or return valueUlrich Weigand2012-10-241-1/+1
| | | | | | | | | | | | will be represented in the IR as a plain "i32" type. This causes the tests to spuriously fail on platforms where int is not a 32-bit type, or where the ABI requires attributes like "signext" or "zeroext" to be used. This patch adds -triple or -target parameters to force those tests to use the i386-unknown-unknown target. llvm-svn: 166551
* Handle gnu_inline in c++ in a gcc compatible way. Original patch by TobiasRafael Espindola2012-10-111-0/+9
| | | | | | Grosser. llvm-svn: 165720
* Use -fvisibility-inlines-hidden in inline functions too. This matches gccRafael Espindola2012-07-131-0/+18
| | | | | | behavior since gcc pr30066. Thanks to Benjamin Kramer for pointing it out. llvm-svn: 160174
* Fix the visibility of methods of explicit template instantiation definitionRafael Espindola2011-12-271-0/+11
| | | | | | | | | when using -fvisibility-inlines-hidden. This matches gcc's behavior and documentation. Fixes PR11642. llvm-svn: 147295
* Fix a couple more tests with ARM ABI.Eli Friedman2011-06-151-1/+1
| | | | llvm-svn: 133073
* Treat visibility on an enclosing namespace as a non-explicit source ofJohn McCall2010-12-101-0/+18
| | | | | | | | | | | visibility. Fixes PR8713. I've disabled a test which was testing that you can #pragma pop visibility to get out of a namespace's visibility attribute. We should probably just diagnose that as an error unless it's instrumental to someone's system headers. llvm-svn: 121459
* Only apply -fvisibility-inlines-hidden to definitions. ApparentlyJohn McCall2010-11-011-0/+15
| | | | | | | | isInlined() just gives meaningless results for non-definitions. Fixes rdar://problem/8614470 llvm-svn: 117887
* Don't apply -fvisibility-inlines-hidden to extern templates.John McCall2010-10-281-2/+11
| | | | | | Part 2 of rdar://problem/8595231 llvm-svn: 117567
* Implement -fvisibility-inlines-hidden. <rdar://problem/7819834>Douglas Gregor2010-06-151-0/+57
llvm-svn: 106003
OpenPOWER on IntegriCloud