llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
29.43k stars 12.16k forks source link

[Meta] Inline assembly constraint support for ARM #27571

Open rengolin opened 8 years ago

rengolin commented 8 years ago
Bugzilla Link 27197
Version trunk
OS Linux
Depends On llvm/llvm-project#16700 llvm/llvm-project#13572 llvm/llvm-project#24445 llvm/llvm-project#26413 llvm/llvm-project#26867 llvm/llvm-project#27258 llvm/llvm-project#27624
CC @compnerd,@echristo

Extended Description

This is a meta bug to join all inline asm constraints support bugs and documentation on how to find information about what they mean.

Posts: http://www.ethernut.de/en/documents/arm-inline-asm.html http://hardwarebug.org/2010/07/06/arm-inline-asm-secrets/

Official docs: https://gcc.gnu.org/onlinedocs/gcc/Constraints.html Target specific part: https://gcc.gnu.org/onlinedocs/gcc/Machine-Constraints.html#Machine-Constraints

Source code: https://github.com/gcc-mirror/gcc/blob/master/gcc/config/arm/arm.c

llvmbot commented 3 years ago

mentioned in issue llvm/llvm-project#27624

llvmbot commented 7 years ago

https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#Flag-Output-Operands

: "m" ((const char ()[]) p), "0" (-1), "a" (0));

Something scares me about this.

echristo commented 8 years ago

You also want constraints.md.

rengolin commented 8 years ago

assigned to @rengolin