Hello! Recent RA change disturbs delicate balance of register allocation, so a couple of scan tests begins to fail.
Attached patch fixes these scan failures by forcing arguments of test function in registers. 2011-12-13 Uros Bizjak <ubiz...@gmail.com> PR testsuite/51524 * gcc.target/i386/bmi2-mulx32-1.c (gen_mulx): Add attribute regparm(2). * gcc.target/i386/bmi2-mulx32-2.c (calc_mulx_u32): Ditto. Tested on x86_64-pc-linux-gnu {,-m32}, committed to mainline SVN. Uros. Index: gcc.target/i386/bmi2-mulx32-1.c =================================================================== --- gcc.target/i386/bmi2-mulx32-1.c (revision 182192) +++ gcc.target/i386/bmi2-mulx32-1.c (working copy) @@ -15,7 +15,7 @@ return res; } -__attribute__((noinline)) +__attribute__((noinline, regparm (2))) unsigned long long gen_mulx (unsigned a, unsigned b) { Index: gcc.target/i386/bmi2-mulx32-2.c =================================================================== --- gcc.target/i386/bmi2-mulx32-2.c (revision 182192) +++ gcc.target/i386/bmi2-mulx32-2.c (working copy) @@ -17,7 +17,7 @@ return res; } -__attribute__((noinline)) +__attribute__((noinline, regparm (2))) unsigned calc_mulx_u32 (unsigned x, unsigned y, unsigned *res_h) { return (unsigned) _mulx_u32 (x, y, res_h);