diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0dfb2d04fff5f8178f6b6ee61f849af61784e544..85ed160a4d14d0178303374999ab7548fac29f3b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
 2009-10-09  Jakub Jelinek  <jakub@redhat.com>
 
+	PR debug/40521
+	* dwarf2out.c (dwarf2out_init): Test whether
+	HAVE_GAS_CFI_SECTIONS_DIRECTIVE is non-zero instead of checking
+	it is defined.
+
 	PR rtl-optimization/41646
 	* calls.c (expand_call): For BLKmode types returned in registers
 	avoid likely spilled hard regs in copy_blkmode_from_reg generated
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 27f2c458ca0bd21d1136da557e9b220cec55bde1..a3f7ad21f2d64d3a83f78c58cb46e86fbb74191b 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -20351,15 +20351,13 @@ dwarf2out_init (const char *filename ATTRIBUTE_UNUSED)
       ASM_OUTPUT_LABEL (asm_out_file, cold_text_section_label);
     }
 
-#ifdef HAVE_GAS_CFI_SECTIONS_DIRECTIVE
-  if (dwarf2out_do_cfi_asm ())
+  if (HAVE_GAS_CFI_SECTIONS_DIRECTIVE && dwarf2out_do_cfi_asm ())
     {
 #ifndef TARGET_UNWIND_INFO
       if (USING_SJLJ_EXCEPTIONS || (!flag_unwind_tables && !flag_exceptions))
 #endif
 	fprintf (asm_out_file, "\t.cfi_sections\t.debug_frame\n");
     }
-#endif
 }
 
 /* A helper function for dwarf2out_finish called through