Sriraman Tallam 4bb794e25d c-common.c (noplt): New attribute.
2015-06-04  Sriraman Tallam  <tmsriram@google.com>

	* c-family/c-common.c (noplt): New attribute.
	(handle_noplt_attribute): New handler.
	* calls.c (prepare_call_address): Check for noplt
	attribute.
	* config/i386/i386.c (ix86_expand_call): Check
	for noplt attribute.
	(ix86_nopic_noplt_attribute_p): New function.
	(ix86_output_call_insn): Output indirect call for non-pic
	no plt calls.
	* doc/extend.texi (noplt): Document new attribute.
	* doc/invoke.texi: Document new attribute.
	* testsuite/gcc.target/i386/noplt-1.c: New test.
	* testsuite/gcc.target/i386/noplt-2.c: New test.
	* testsuite/gcc.target/i386/noplt-3.c: New test.
	* testsuite/gcc.target/i386/noplt-4.c: New test.

This patch does two things:

* Adds new generic function attribute "noplt" that is similar in functionality
  to -fno-plt except that it applies only to calls to functions that are marked
  with this attribute.
* For x86_64, it makes -fno-plt(and the attribute) also work for non-PIC code by
  directly generating an indirect call via a GOT entry.

From-SVN: r224138
2015-06-04 21:14:10 +00:00
..
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 21:14:10 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-05-08 08:30:40 +00:00
2015-05-08 08:25:47 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00
2015-06-04 17:49:54 +00:00

This directory contains machine-specific files for the GNU C compiler.
It has a subdirectory for each basic CPU type.
The only files in this directory itself
are some .h files that pertain to particular operating systems
and are used for more than one CPU type.