Hi,
On 6 July 2017 at 06:50, Jeff Law <l...@redhat.com> wrote: > On 07/04/2017 02:50 AM, Christophe Lyon wrote: >> On 3 July 2017 at 17:30, Jeff Law <l...@redhat.com> wrote: >>> On 07/03/2017 09:00 AM, Christophe Lyon wrote: >>>> Hi, >>>> >>>> This is a follow-up to >>>> https://gcc.gnu.org/ml/gcc-patches/2017-06/msg01791.html >>>> >>>> This patch adds dg-require-stack-check and updates the tests that use >>>> dg-options "-fstack-check" to avoid failures on configurations that to >>>> not support it. >>>> >>>> I merely copied what we currently do to check if visibility flags are >>>> supported, and cross-tested on aarch64 and arm targets with the >>>> results I expected. >>>> >>>> This means that my testing does not cover the changes I propose for >>>> i386 and gnat. >>>> >>>> Is it OK nonetheless? >>>> >>>> Thanks, >>>> >>>> Christophe >>>> >>>> >>>> stack-check-et.chlog.txt >>>> >>>> >>>> 2017-07-03 Christophe Lyon <christophe.l...@linaro.org> >>>> >>>> * lib/target-supports-dg.exp (dg-require-stack-check): New. >>>> * lib/target-supports.exp (check_stack_check_available): New. >>>> * g++.dg/other/i386-9.C: Add dg-require-stack-check. >>>> * gcc.c-torture/compile/stack-check-1.c: Likewise. >>>> * gcc.dg/graphite/run-id-pr47653.c: Likewise. >>>> * gcc.dg/pr47443.c: Likewise. >>>> * gcc.dg/pr48134.c: Likewise. >>>> * gcc.dg/pr70017.c: Likewise. >>>> * gcc.target/aarch64/stack-checking.c: Likewise. >>>> * gcc.target/arm/stack-checking.c: Likewise. >>>> * gcc.target/i386/pr48723.c: Likewise. >>>> * gcc.target/i386/pr55672.c: Likewise. >>>> * gcc.target/i386/pr67265-2.c: Likewise. >>>> * gcc.target/i386/pr67265.c: Likewise. >>>> * gnat.dg/opt49.adb: Likewise. >>>> * gnat.dg/stack_check1.adb: Likewise. >>>> * gnat.dg/stack_check2.adb: Likewise. >>>> * gnat.dg/stack_check3.adb: Likewise. >>> ACK once you address Rainer's comments. I've got further stack-check >>> tests in the queue which I'll update once your change goes in. >>> >>> jeff >> Here is an updated version, which adds documentation for >> dg-require-stack-check. >> >> I also ran make-check on and x86_64 with ada enabled and checked the logs: >> the updated i386/* and gnat.dg* tests all pass, and are preceded by >> the compilation >> of the "stack_check" sample. >> >> OK? >> >> Thanks, >> >> Christophe >> >> >> stack-check-et.chlog.txt >> >> >> 2017-07-04 Christophe Lyon <christophe.l...@linaro.org> >> >> gcc/ >> * doc/sourcebuild.texi (Test Directives, Variants of >> dg-require-support): Add documentation for dg-require-stack-check. >> >> gcc/testsuite/ >> * lib/target-supports-dg.exp (dg-require-stack-check): New. >> * lib/target-supports.exp (check_stack_check_available): New. >> * g++.dg/other/i386-9.C: Add dg-require-stack-check. >> * gcc.c-torture/compile/stack-check-1.c: Likewise. >> * gcc.dg/graphite/run-id-pr47653.c: Likewise. >> * gcc.dg/pr47443.c: Likewise. >> * gcc.dg/pr48134.c: Likewise. >> * gcc.dg/pr70017.c: Likewise. >> * gcc.target/aarch64/stack-checking.c: Likewise. >> * gcc.target/arm/stack-checking.c: Likewise. >> * gcc.target/i386/pr48723.c: Likewise. >> * gcc.target/i386/pr55672.c: Likewise. >> * gcc.target/i386/pr67265-2.c: Likewise. >> * gcc.target/i386/pr67265.c: Likewise. >> * gnat.dg/opt49.adb: Likewise. >> * gnat.dg/stack_check1.adb: Likewise. >> * gnat.dg/stack_check2.adb: Likewise. >> * gnat.dg/stack_check3.adb: Likewise. > OK for the trunk. Thanks for doing this! > I've committed this as r250013. Since then, I've noticed that pr48134 randomly fails. According to gcc.log, this seems related the order wrt pr47443. pr48134 uses -fstack-check=specific, while pr47443 uses -fstack-check=generic. When pr47443 appears before pr48134 in gcc.log, the latter fails, otherwise it is unsupported. Looking at gcc.log, it seems that dg-require-stack-check is not always called. Is there some caching in dejagnu I'm not aware of, that would ignore the value of the parameter (assuming that dg-require-stack-check "specific" and dg-require-stack-check "generic" return the same value?) Am I missing anything obvious? Thanks, Christophe > Jeff