re PR target/60179 (target optimization attribute streaming is broken)
2014-05-21 Cesar Philippidis <cesar@codesourcery.com> Sandra Loosemore <sandra@codesourcery.com> PR lto/60179 gcc/testsuite/ * lib/scanasm.exp (scan-lto-assembler): New procedure. * gcc.target/nios2/custom-fp-lto.c: New test. Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com> From-SVN: r210714
This commit is contained in:
parent
95989e5ce5
commit
19ce781984
3 changed files with 46 additions and 0 deletions
|
@ -1,3 +1,10 @@
|
|||
2014-05-21 Cesar Philippidis <cesar@codesourcery.com>
|
||||
Sandra Loosemore <sandra@codesourcery.com>
|
||||
|
||||
PR lto/60179
|
||||
* lib/scanasm.exp (scan-lto-assembler): New procedure.
|
||||
* gcc.target/nios2/custom-fp-lto.c: New test.
|
||||
|
||||
2014-05-21 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* g++.dg/cpp0x/pr61038.C (operator "" _s): Use size_t.
|
||||
|
|
29
gcc/testsuite/gcc.target/nios2/custom-fp-lto.c
Normal file
29
gcc/testsuite/gcc.target/nios2/custom-fp-lto.c
Normal file
|
@ -0,0 +1,29 @@
|
|||
/* Test specification of custom instructions via pragma in the presence
|
||||
of LTO. This test case formerly failed due to PR60179. */
|
||||
|
||||
/* { dg-do link } */
|
||||
/* { dg-require-effective-target lto } */
|
||||
/* { dg-options "-O1 -flto -flto-partition=one -save-temps" } */
|
||||
|
||||
/* -O1 in the options is significant. Without it FP operations may not be
|
||||
optimized to custom instructions. */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <math.h>
|
||||
|
||||
#pragma GCC target ("custom-fabss=224")
|
||||
|
||||
float
|
||||
custom_fp (float operand_a)
|
||||
{
|
||||
return fabsf (operand_a);
|
||||
}
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
return custom_fp ((float)argc) > 1.0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-lto-assembler "custom\\t224, " } } */
|
||||
/* { dg-final { cleanup-saved-temps } } */
|
|
@ -500,3 +500,13 @@ proc dg-function-on-line { args } {
|
|||
|
||||
append final-code "$cmd\n"
|
||||
}
|
||||
|
||||
# Look for a pattern in the .exe.ltrans0.s file produced by the
|
||||
# compiler. See dg-scan for details.
|
||||
|
||||
proc scan-lto-assembler { args } {
|
||||
set testcase [testname-for-summary]
|
||||
set output_file "[file rootname [file tail $testcase]].exe.ltrans0.s"
|
||||
verbose "output_file: $output_file"
|
||||
dg-scan "scan-assembler" 1 $testcase $output_file $args
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue