Hal Finkel b6bb7db62b [PowerPC] Fix calls to non-function objects
Looking at r225438 inspired me to see how the PowerPC backend handled the
situation (calling a bitcasted TLS global), and it turns out we also produced
an error (cannot select ...). What it means to "call" something that is not a
function is implementation and platform specific, but in the name of doing
something (besides crashing), this makes sure we do what GCC does (treat all
such calls as calls through a function pointer -- meaning that the pointer is
assumed, as is the convention on PPC, to point to a function descriptor
structure holding the actual code address along with the function's TOC pointer
and environment pointer). As GCC does, we now do the same for calling regular
(non-TLS) non-function globals too.

I'm not sure whether this is the most useful way to define the behavior, but at
least we won't be alone.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225617 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-12 04:34:47 +00:00
..
2013-03-27 06:52:27 +00:00
2013-07-03 17:59:07 +00:00
2014-12-15 19:07:53 +00:00
2015-01-07 20:54:17 +00:00
2015-01-07 20:54:17 +00:00
2014-10-21 23:01:01 +00:00
2014-10-21 23:01:01 +00:00
2014-12-26 16:42:47 +00:00
2013-04-05 23:29:01 +00:00
2012-12-20 17:47:27 +00:00
2014-08-04 21:06:00 +00:00
2014-08-04 21:06:00 +00:00
2013-08-06 17:03:03 +00:00
2013-04-01 15:58:15 +00:00
2015-01-10 01:57:21 +00:00
2015-01-10 01:57:21 +00:00
2014-10-16 20:00:02 +00:00
2013-04-27 00:43:16 +00:00
2013-12-20 18:08:54 +00:00
2012-12-19 15:49:14 +00:00