view gcc/testsuite/gcc.dg/fdata-sections-2.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children 1830386684a0
line wrap: on
line source

/* PR middle-end/192 */
/* PR middle-end/54303 */

/* This checks that string constants are put in per-function rodata
   sections, so that they can be garbage collected.  */

/* { dg-do compile { target *-*-linux* } } */
/* { dg-options "-O -ffunction-sections -fdata-sections" } */

const char *f1(void) { return "falderalde"; }
const char *f2(void) { return "a"; }
const char *f3(void) { return "falderalde"; }
const char *f4(void) { return "eralde"; }

/* { dg-final { scan-assembler {\.rodata\.f1\.str} } } */
/* { dg-final { scan-assembler {\.rodata\.f2\.str} } } */
/* { dg-final { scan-assembler-not {\.rodata\.f3\.str} } } */
/* { dg-final { scan-assembler {\.rodata\.f4\.str} } } */