[llvm-dev] Tail calls and portability

Krzysztof Parzyszek via llvm-dev llvm-dev at lists.llvm.org
Thu Jan 5 07:48:21 PST 2017


On 1/4/2017 9:07 PM, Demi Obenour via llvm-dev wrote:
> I have been working on adding proper tail (via `become`) to rustc.  I
> was able to make them work (some parts of the type checker aren't
> implemented yet).  However, I ran into an LLVM-related problem.
>
> LLVM claims to support proper tail calls when fastcc is used — but only
> on i386, x86-64 and PowerPC.  Is this accurate? Will proper tail calls
> be supported on WebAssembly?  Are they supported on ARM? AArch64? Other
> backends?

Hexagon uses tail calls in the right circumstances, but it ignores musttail.

-Krzysztof

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, 
hosted by The Linux Foundation


More information about the llvm-dev mailing list