/* Check that zero-displacement branches are used instead of branch-free execution patterns. */ /* { dg-do compile } */ /* { dg-options "-O1 -mzdcbranch" } */ /* { dg-skip-if "" { "sh*-*-*" } { "-m5*" } { "" } } */ /* { dg-final { scan-assembler-not "subc|and" } } */ int* test_00 (int* s) { if (s[0] == 0) if (!s[3]) s = 0; return s; } int* test_01 (int* s) { if (s[0] == 0) if (s[3]) s = 0; return s; }