Parameter attributes are considered part of the function [1], and like mismatched calling conventions [2], we can't have the verifier check for mismatched parameter attributes. This is a reland after fixing MSan issues in D102667. [1] https://llvm.org/docs/LangRef.html#parameter-attributes [2] https://llvm.org/docs/FAQ.html#why-does-instcombine-simplifycfg-turn-a-call-to-a-function-with-a-mismatched-calling-convention-into-unreachable-why-not-make-the-verifier-reject-it Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D101806
14 lines
358 B
LLVM
14 lines
358 B
LLVM
; RUN: llc < %s -mcpu=generic -x86-asm-syntax=intel | FileCheck %s
|
|
; CHECK: add esp, 8
|
|
|
|
target triple = "i686-pc-linux-gnu"
|
|
|
|
declare x86_fastcallcc void @func(i32*, i64 inreg)
|
|
|
|
define x86_fastcallcc void @caller(i32, i64) {
|
|
%X = alloca i32 ; <i32*> [#uses=1]
|
|
call x86_fastcallcc void @func( i32* %X, i64 inreg 0 )
|
|
ret void
|
|
}
|
|
|