OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [debug/] [dwarf2/] [typedef6.C] - Rev 715

Go to most recent revision | Compare with Previous | Blame | View Log

// Origin PR debug/
// { dg-options "-g -dA" }

class C {
public:
  C() {}
  ~C() {}
};
typedef struct {
  C m;
} t;
typedef t s;
s v;

/*
  We want to check that we have a DIE describing the typedef t like this:

        .uleb128 0xc    # (DIE (0xb8) DW_TAG_typedef)
        .ascii "t\0"    # DW_AT_name
        .byte   0x1     # DW_AT_decl_file (../../prtests/test.cc)
        .byte   0xb     # DW_AT_decl_line
        .long   0x78    # DW_AT_type

  e.g, it should not haven any child DIE -- the bug here was that this
  DIE had children DIEs. So we check that the last line is immediately
  followed by a line containing the pattern "(DIE (", instead of a
  line containing a DW_AT_sibling attribute.
 */

// { dg-final { scan-assembler-times "\[^\n\r\]*\\(DIE \[^\n\r\]* DW_TAG_typedef\\)\[\n\r\]{1,2}\[^\n\r\].*\"t\\\\0\"\[^\n\r\]*DW_AT_name\[\n\r\]{1,2}\[^\n\r\]*\[\n\r\]{1,2}\[^\n\r\]*\[\n\r\]{1,2}\[^\n\r\]*DW_AT_type\[\n\r\]{1,2}\[^\n\r\]*\\(DIE" 1 } }

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.