File: indent_struct.v

package info (click to toggle)
verilog-mode 20161124.fd230e6-2
  • links: PTS, VCS
  • area: main
  • in suites: buster, stretch
  • size: 3,764 kB
  • ctags: 5,143
  • sloc: lisp: 12,430; perl: 293; makefile: 146; sh: 35; fortran: 2
file content (45 lines) | stat: -rw-r--r-- 912 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
module foo;
   
   a = { g + c; };
   a = c;
   
   typedef struct {
      reg 	  r;
      ahb_op_t         op;             // Read, write, etc.
      ahb_cycle_type_t cti;            // Cycle type for bursts
      ahb_incr_type_t  incr;           // Increment type (for bursts)
      bit 	  b;
      reg 	  r;
      ahb_thingy a;
      bit [31:2]  addr;           // Starting address
      bit [3:0]   byte_sel;       // Byte lane select
      int 	  len;            // Length of transfer
      bit [31:0]  data[0:7];      // Write data
   } ahb_req_t;
   
   struct 	  {
      reg 	  f;
      xyzzy b;
   };
   struct 	  packed {
      int 	  a;  // ok
   };
   struct 	  packed signed {
      int 	  a;  // woops
   };
   struct 	  packed unsigned {
      int 	  a;  // woops
   };
   
endmodule // foo

module foo (
    input a;
    input c;
    output d;
	    );
   always @(a) g;
   
   

endmodule // foo