MIPS: Mark arguments of __builtin_mips_wrdsp / __builtin_mips_rddsp as a constant expression.

llvm-svn: 159910
This commit is contained in:
Simon Atanasyan 2012-07-08 09:10:14 +00:00
parent 7ebb07c87c
commit 21861d23f9
2 changed files with 11 additions and 2 deletions

View File

@ -107,8 +107,8 @@ BUILTIN(__builtin_mips_extr_r_w, "iLLii", "nc")
BUILTIN(__builtin_mips_extp, "iLLii", "nc")
BUILTIN(__builtin_mips_extpdp, "iLLii", "nc")
BUILTIN(__builtin_mips_wrdsp, "vii", "nc")
BUILTIN(__builtin_mips_rddsp, "ii", "nc")
BUILTIN(__builtin_mips_wrdsp, "viIi", "nc")
BUILTIN(__builtin_mips_rddsp, "iIi", "nc")
BUILTIN(__builtin_mips_insv, "iii", "nc")
BUILTIN(__builtin_mips_bitrev, "ii", "nc")
BUILTIN(__builtin_mips_packrl_ph, "V2sV2sV2s", "nc")

View File

@ -0,0 +1,9 @@
// RUN: %clang_cc1 -triple mips-unknown-linux-gnu -fsyntax-only -verify %s
void foo() {
// MIPS DSP Rev 1
int a = 3;
__builtin_mips_wrdsp(2052, a); // expected-error{{argument to '__builtin_mips_wrdsp' must be a constant integer}}
__builtin_mips_rddsp(a); // expected-error{{argument to '__builtin_mips_rddsp' must be a constant integer}}
}