summaryrefslogtreecommitdiffstats
path: root/llvm/docs/Extensions.rst
Commit message (Collapse)AuthorAgeFilesLines
* Use a comma after the unique keyword.Rafael Espindola2015-04-061-2/+2
| | | | | | | | H.J. Lu noted that all .section options are separated by a comma. This patch changes the syntax of unique to require one. llvm-svn: 234174
* Implement unique sections with an unique ID.Rafael Espindola2015-04-041-0/+23
| | | | | | | | | | | This allows the compiler/assembly programmer to switch back to a section. This in turn fixes the bootstrap failure on powerpc (tested on gcc110) without changing the ppc codegen at all. I will try to cleanup the various getELFSection overloads in a followup patch. Just using a default argument now would lead to ambiguities. llvm-svn: 234099
* ARM: add VLA extension for WoA Itanium ABISaleem Abdulrasool2014-06-091-0/+14
| | | | | | | | | | | | | | | | The armv7-windows-itanium environment is nearly identical to the MSVC ABI. It has a few divergences, mostly revolving around the use of the Itanium ABI for C++. VLA support is one of the extensions that are amongst the set of the extensions. This adds support for proper VLA emission for this environment. This is somewhat similar to the handling for __chkstk emission on X86 and the large stack frame emission for ARM. The invocation style for chkstk is still controlled via the -mcmodel flag to clang. Make an explicit note that this is an extension. llvm-svn: 210489
* Fix a few issues with comdat handling on COFF.Rafael Espindola2014-06-061-15/+20
| | | | | | | | | | | | | | | | | | | | | * Section association cannot use just the section name as many sections can have the same name. With this patch, the comdat symbol in an assoc section is interpreted to mean a symbol in the associated section and the mapping is discovered from it. * Comdat symbols were not being set correctly. Instead we were getting whatever was output first for that section. A consequence is that associative sections now must use .section to set the association. Using .linkonce would not work since it is not possible to change a sections comdat symbol (it is used to decide if we should create a new section or reuse an existing one). This includes r210298, which was reverted because it was asserting on an associated section having the same comdat as the associated section. llvm-svn: 210367
* Fix typosAlp Toker2014-05-151-1/+1
| | | | llvm-svn: 208839
* ARM: support stack probe emission for Windows on ARMSaleem Abdulrasool2014-04-301-0/+31
| | | | | | | | | | | | | | | | | This introduces the stack lowering emission of the stack probe function for Windows on ARM. The stack on Windows on ARM is a dynamically paged stack where any page allocation which crosses a page boundary of the following guard page will cause a page fault. This page fault must be handled by the kernel to ensure that the page is faulted in. If this does not occur and a write access any memory beyond that, the page fault will go unserviced, resulting in an abnormal program termination. The watermark for the stack probe appears to be at 4080 bytes (for accommodating the stack guard canaries and stack alignment) when SSP is enabled. Otherwise, the stack probe is emitted on the page size boundary of 4096 bytes. llvm-svn: 207615
* Fix typoNico Rieck2014-02-151-2/+2
| | | | llvm-svn: 201461
* [COFF] Add support for the .secidx directiveTimur Iskhodzhanov2013-12-201-1/+17
| | | | | | Reviewed at http://llvm-reviews.chandlerc.com/D2445 llvm-svn: 197826
* Fix a typo in the docsTimur Iskhodzhanov2013-12-201-1/+1
| | | | llvm-svn: 197798
* Support multiple COFF sections with the same name but different COMDAT.Rafael Espindola2013-11-191-0/+38
| | | | | | | | | | | | | | | | | | This is the first step to fix pr17918. It extends the .section directive a bit, inspired by what the ELF one looks like. The problem with using linkonce is that given .section foo .linkonce.... .section foo .linkonce we would already have switched sections when getting to .linkonce. The cleanest solution seems to be to add the comdat information in the .section itself. llvm-svn: 195148
* Sphinx refuses to render this code block. Try adding a newline.Benjamin Kramer2013-08-141-0/+1
| | | | llvm-svn: 188382
* Add the C99 hex-float assembly syntax to our extension document.Tim Northover2013-08-141-0/+13
| | | | | | | As Ben pointed out, GAS doesn't support this syntax so we should give at least some warning that it might not be portable. llvm-svn: 188377
* MC: Implement COFF .linkonce directiveNico Rieck2013-07-061-1/+55
| | | | llvm-svn: 185753
* MC: Support COFF image-relative MCSymbolRefsNico Rieck2013-04-101-0/+39
Add support for the COFF relocation types IMAGE_REL_I386_DIR32NB and IMAGE_REL_AMD64_ADDR32NB for 32- and 64-bit respectively. These are similar to normal 4-byte relocations except that they do not include the base address of the image. Image-relative relocations are used for debug information (32-bit) and SEH unwind tables (64-bit). A new MCSymbolRef variant called 'VK_COFF_IMGREL32' is introduced to specify such relocations. For AT&T assembly, this variant can be accessed using the symbol suffix '@imgrel'. llvm-svn: 179240
OpenPOWER on IntegriCloud