C语法归约之表达式复合运算(4)

上篇文字是基本表达式归约过程示例,本篇将来点高级复杂的玩玩!这部分示例代码源自kernel的20个源程序文件,挑选运算符组合复杂和比较典型的表达式!因此只能用来归约示例,不是可运行代码!从而导致归约树尤其的大!个别表达式对你用处不大,不用全看,挑你有兴趣的运算符组合,瞅瞅就好!

示例代码

void test_exp()
{
	mask |= (1 << i);

	*cc = (struct compact_control *)data;

	*ppos += *lenp;

	ent->type  = resid >> 24;

	(((dp>>4) ^ dp) & 0x0F) != 0x0F;

	(dp & 0x0F) >= (1<<i);

	set_pte_at(&init_mm, vaddr, &(pkmap_page_table[last_pkmap_nr]), mk_pte(page, kmap_prot));
	
	*zone = &pgdat->node_zones[zoneid];

	need_resched() || spin_is_contended(lock);

	is_migrate_cma(migratetype) || migratetype == MIGRATE_MOVABLE;

	vec |= ~map[idx / BITS_PER_LONG + 1] << (BITS_PER_LONG - shift);

	*t++ = nubus_get_rom(&p, 1, dirent->mask);

	dir->ptr = dir->base = board->directory;

	dir->ptr = dir->base = nubus_dirptr(ent);

	pl08x->slave.dev = &adev->dev;

	val &= ~PL080_CONFIG_HALT;

	writel(1 << ch->id, pl08x->base + PL080_ERR_CLEAR);

	ch = &pl08x->phy_chans[i];

	*mbus = &bd->dstbus;

	llis_va[num_llis].src = bd->srcbus.addr;

	llis_va[num_llis].lli = llis_bus + (num_llis + 1) * sizeof(struct pl08x_lli);

	bd->dstbus.addr += len;

	*cctl = pl08x_cctl_bits(*cctl, 1, 1, len);

	(*total_bytes) += len;

	bd.lli_bus = (pl08x->lli_buses & PL08X_AHB2) ? PL080_LLI_LM_AHB2 : 0;

	prep_byte_width_lli(&bd, &cctl, bd.remainder, num_llis++, &total_bytes);

	llis_va[num_llis - 1].cctl |= PL080_CONTROL_TC_IRQ_EN;

	flag = !(dst & PL08X_AHB1) || ((dst & PL08X_AHB2) && (src & PL08X_AHB1));

	cctl &= ~(PL080_CONTROL_SRC_AHB2 | PL080_CONTROL_DST_AHB2 |
		  PL080_CONTROL_PROT_MASK);

	cctl |= width << PL080_CONTROL_SWIDTH_SHIFT;

	txd->ccfg |= PL080_FLOW_MEM2MEM << PL080_CONFIG_FLOW_CONTROL_SHIFT;

	txd->cctl = pl08x->pd->memcpy_channel.cctl_memcpy &
			~(PL080_CONTROL_DST_AHB2 | PL080_CONTROL_SRC_AHB2);

	dev_vdbg(&pl08x->adev->dev, "src=0x%08x%s/%u dst=0x%08x%s/%u len=%zu\n",
			bd.srcbus.addr, cctl & PL080_CONTROL_SRC_INCR ? "+" : "",
			bd.remainder);

	res = dev->errors ? (dev->errors == -EPIPE ? -EPIPE : -EIO) : 0;
}

归约过程

void test_exp()
{
	mask |= (1 << i);
<pre name="code" class="cpp">curr: void  next: test_exp  
type-specifier 
declaration-specifiers 

curr: ID  next: (  
declaration-specifiers direct-declarator 

curr: (  next: )  

curr: )  next: {  
declaration-specifiers direct-declarator 
declaration-specifiers declarator 

curr: {  next: mask  

curr: ID  next: |=  
declaration-specifiers declarator { primary-expression 
declaration-specifiers declarator { postfix-expression 
declaration-specifiers declarator { unary-expression 

curr: |=  next: (  
declaration-specifiers declarator { unary-expression assignment-operator 

curr: (  next: 1  

curr: 1  next: <<  
declaration-specifiers declarator { unary-expression assignment-operator ( primary-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( postfix-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( unary-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( cast-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( multiplicative-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( additive-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression 

curr: <<  next: i  

curr: ID  next: )  
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << primary-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << postfix-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << unary-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << cast-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << multiplicative-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression << additive-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( shift-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( relational-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( equality-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( AND-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( exclusive-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( inclusive-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( logical-AND-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( logical-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( conditional-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( assignment-expression 
declaration-specifiers declarator { unary-expression assignment-operator ( expression 

curr: )  next: ;  
declaration-specifiers declarator { unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { assignment-expression 
declaration-specifiers declarator { expression 

curr: ;  next: *  
declaration-specifiers declarator { expression-statement 
declaration-specifiers declarator { statement 
declaration-specifiers declarator { block-item 
declaration-specifiers declarator { block-item-list 

 

	*cc = (struct compact_control *)data;
curr: *  next: cc  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: (  next: struct  


curr: struct  next: compact_control  


curr: ID  next: *  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( struct-specifier 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-specifier 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( specifier-qualifier-list 


curr: *  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( specifier-qualifier-list pointer 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( specifier-qualifier-list abstract-declarator 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-name 


curr: )  next: data  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-name ) primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-name ) postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-name ) unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( type-name ) cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: *  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 
	*ppos += *lenp;
curr: *  next: ppos  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: +=  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: +=  next: *  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: *  next: lenp  
here
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: ent  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	ent->type  = resid >> 24;
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: type  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: resid  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: >>  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 


curr: >>  next: 24  


curr: 24  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression >> additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: (  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	(((dp>>4) ^ dp) & 0x0F) != 0x0F;
curr: (  next: (  


curr: (  next: (  


curr: (  next: dp  


curr: ID  next: >>  
declaration-specifiers declarator { block-item-list ( ( ( primary-expression 
declaration-specifiers declarator { block-item-list ( ( ( postfix-expression 
declaration-specifiers declarator { block-item-list ( ( ( unary-expression 
declaration-specifiers declarator { block-item-list ( ( ( cast-expression 
declaration-specifiers declarator { block-item-list ( ( ( multiplicative-expression 
declaration-specifiers declarator { block-item-list ( ( ( additive-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression 


curr: >>  next: 44  


curr: 44  next: )  
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> primary-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> postfix-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> unary-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> cast-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> multiplicative-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression >> additive-expression 
declaration-specifiers declarator { block-item-list ( ( ( shift-expression 
declaration-specifiers declarator { block-item-list ( ( ( relational-expression 
declaration-specifiers declarator { block-item-list ( ( ( equality-expression 
declaration-specifiers declarator { block-item-list ( ( ( AND-expression 
declaration-specifiers declarator { block-item-list ( ( ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( ( ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( ( ( logical-AND-expression 
declaration-specifiers declarator { block-item-list ( ( ( logical-OR-expression 
declaration-specifiers declarator { block-item-list ( ( ( conditional-expression 
declaration-specifiers declarator { block-item-list ( ( ( assignment-expression 
declaration-specifiers declarator { block-item-list ( ( ( expression 


curr: )  next: ^  
declaration-specifiers declarator { block-item-list ( ( primary-expression 
declaration-specifiers declarator { block-item-list ( ( postfix-expression 
declaration-specifiers declarator { block-item-list ( ( unary-expression 
declaration-specifiers declarator { block-item-list ( ( cast-expression 
declaration-specifiers declarator { block-item-list ( ( multiplicative-expression 
declaration-specifiers declarator { block-item-list ( ( additive-expression 
declaration-specifiers declarator { block-item-list ( ( shift-expression 
declaration-specifiers declarator { block-item-list ( ( relational-expression 
declaration-specifiers declarator { block-item-list ( ( equality-expression 
declaration-specifiers declarator { block-item-list ( ( AND-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression 


curr: ^  next: dp  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ primary-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ postfix-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ unary-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ cast-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ multiplicative-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ additive-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ shift-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ relational-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ equality-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression ^ AND-expression 
declaration-specifiers declarator { block-item-list ( ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( ( logical-AND-expression 
declaration-specifiers declarator { block-item-list ( ( logical-OR-expression 
declaration-specifiers declarator { block-item-list ( ( conditional-expression 
declaration-specifiers declarator { block-item-list ( ( assignment-expression 
declaration-specifiers declarator { block-item-list ( ( expression 


curr: )  next: &  
declaration-specifiers declarator { block-item-list ( primary-expression 
declaration-specifiers declarator { block-item-list ( postfix-expression 
declaration-specifiers declarator { block-item-list ( unary-expression 
declaration-specifiers declarator { block-item-list ( cast-expression 
declaration-specifiers declarator { block-item-list ( multiplicative-expression 
declaration-specifiers declarator { block-item-list ( additive-expression 
declaration-specifiers declarator { block-item-list ( shift-expression 
declaration-specifiers declarator { block-item-list ( relational-expression 
declaration-specifiers declarator { block-item-list ( equality-expression 
declaration-specifiers declarator { block-item-list ( AND-expression 


curr: &  next: 15  


curr: 15  next: )  
declaration-specifiers declarator { block-item-list ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list ( AND-expression 
declaration-specifiers declarator { block-item-list ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( logical-AND-expression 
declaration-specifiers declarator { block-item-list ( logical-OR-expression 
declaration-specifiers declarator { block-item-list ( conditional-expression 
declaration-specifiers declarator { block-item-list ( assignment-expression 
declaration-specifiers declarator { block-item-list ( expression 


curr: )  next: !=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 


curr: !=  next: 15  


curr: 15  next: ;  
declaration-specifiers declarator { block-item-list equality-expression != primary-expression 
declaration-specifiers declarator { block-item-list equality-expression != postfix-expression 
declaration-specifiers declarator { block-item-list equality-expression != unary-expression 
declaration-specifiers declarator { block-item-list equality-expression != cast-expression 
declaration-specifiers declarator { block-item-list equality-expression != multiplicative-expression 
declaration-specifiers declarator { block-item-list equality-expression != additive-expression 
declaration-specifiers declarator { block-item-list equality-expression != shift-expression 
declaration-specifiers declarator { block-item-list equality-expression != relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: (  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	(dp & 0x0F) >= (1<<i);
curr: (  next: dp  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list ( primary-expression 
declaration-specifiers declarator { block-item-list ( postfix-expression 
declaration-specifiers declarator { block-item-list ( unary-expression 
declaration-specifiers declarator { block-item-list ( cast-expression 
declaration-specifiers declarator { block-item-list ( multiplicative-expression 
declaration-specifiers declarator { block-item-list ( additive-expression 
declaration-specifiers declarator { block-item-list ( shift-expression 
declaration-specifiers declarator { block-item-list ( relational-expression 
declaration-specifiers declarator { block-item-list ( equality-expression 
declaration-specifiers declarator { block-item-list ( AND-expression 


curr: &  next: 15  


curr: 15  next: )  
declaration-specifiers declarator { block-item-list ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list ( AND-expression 
declaration-specifiers declarator { block-item-list ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( logical-AND-expression 
declaration-specifiers declarator { block-item-list ( logical-OR-expression 
declaration-specifiers declarator { block-item-list ( conditional-expression 
declaration-specifiers declarator { block-item-list ( assignment-expression 
declaration-specifiers declarator { block-item-list ( expression 


curr: )  next: >=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 


curr: >=  next: (  


curr: (  next: 1  


curr: 1  next: <<  
declaration-specifiers declarator { block-item-list relational-expression >= ( primary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( postfix-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( unary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( cast-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( multiplicative-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( additive-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression 


curr: <<  next: ii  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << primary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << postfix-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << unary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << cast-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << multiplicative-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression << additive-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( shift-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( relational-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( equality-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( AND-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( logical-AND-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( logical-OR-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( conditional-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( assignment-expression 
declaration-specifiers declarator { block-item-list relational-expression >= ( expression 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list relational-expression >= primary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= postfix-expression 
declaration-specifiers declarator { block-item-list relational-expression >= unary-expression 
declaration-specifiers declarator { block-item-list relational-expression >= cast-expression 
declaration-specifiers declarator { block-item-list relational-expression >= multiplicative-expression 
declaration-specifiers declarator { block-item-list relational-expression >= additive-expression 
declaration-specifiers declarator { block-item-list relational-expression >= shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: set_pte_at  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	set_pte_at(&init_mm, vaddr, &(pkmap_page_table[last_pkmap_nr]), mk_pte(page, kmap_prot));
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: init_mm  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: vaddr  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: &  


curr: &  next: (  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator 


curr: (  next: pkmap_page_table  


curr: ID  next: [  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression 


curr: [  next: last_pkmap_nr  


curr: ID  next: ]  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression [ expression 


curr: ]  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator ( expression 


curr: )  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: mk_pte  


curr: ID  next: (  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: (  next: page  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list 


curr: ,  next: kmap_prot  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression ( argument-expression-list 


curr: )  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: *  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	*zone = &pgdat->node_zones[zoneid];
curr: *  next: zone  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: &  next: pgdat  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: ->  next: node_zones  


curr: ID  next: [  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: [  next: zoneid  


curr: ID  next: ]  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ expression 


curr: ]  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: need_resched  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	need_resched() || spin_is_contended(lock);
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: )  


curr: )  next: ||  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 


curr: ||  next: spin_is_contended  


curr: ID  next: (  
declaration-specifiers declarator { block-item-list logical-OR-expression || primary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression 


curr: (  next: lock  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || unary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || cast-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || multiplicative-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || additive-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || shift-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || relational-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || exclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: is_migrate_cma  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	is_migrate_cma(migratetype) || migratetype == MIGRATE_MOVABLE;
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: migratetype  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: )  next: ||  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 


curr: ||  next: migratetype  


curr: ID  next: ==  
declaration-specifiers declarator { block-item-list logical-OR-expression || primary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || postfix-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || unary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || cast-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || multiplicative-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || additive-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || shift-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || relational-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression 


curr: ==  next: MIGRATE_MOVABLE  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == primary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == postfix-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == unary-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == cast-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == multiplicative-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == additive-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == shift-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression == relational-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || equality-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || exclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression || logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: vec  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	vec |= ~map[idx / BITS_PER_LONG + 1] << (BITS_PER_LONG - shift);
curr: ID  next: |=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: |=  next: ~  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ~  next: map  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: [  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: [  next: idx  


curr: ID  next: /  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression 


curr: /  next: BITS_PER_LONG  


curr: ID  next: +  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression / primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression / postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression / unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression / cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression 


curr: +  next: 1  


curr: 1  next: ]  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression + primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression + postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression + unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression + cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression + multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ expression 


curr: ]  next: <<  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 


curr: <<  next: (  


curr: (  next: BITS_PER_LONG  


curr: ID  next: -  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression 


curr: -  next: shift  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression - primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression - postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression - unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression - cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression - multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << ( expression 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: *  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	*t++ = nubus_get_rom(&p, 1, dirent->mask);
curr: *  next: t  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: ++  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 


curr: ++  next: =  
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: nubus_get_rom  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: (  next: p  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: ,  next: 1  


curr: 1  next: ,  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: ,  next: dirent  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 


curr: ->  next: mask  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: dir  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	dir->ptr = dir->base = board->directory;
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: ptr  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: dir  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: base  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 


curr: =  next: board  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression 


curr: ->  next: directory  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: dir  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	dir->ptr = dir->base = nubus_dirptr(ent);
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: ptr  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: dir  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: base  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 


curr: =  next: nubus_dirptr  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator 


curr: ID  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression 


curr: (  next: ent  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: pl08x  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	pl08x->slave.dev = &adev->dev;
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: slave  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: dev  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: &  next: adev  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: ->  next: dev  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: val  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	val &= ~PL080_CONFIG_HALT;
curr: ID  next: &=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: &=  next: ~  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ~  next: PL080_CONFIG_HALT  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: writel  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	writel(1 << ch->id, pl08x->base + PL080_ERR_CLEAR);
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: 1  


curr: 1  next: <<  
declaration-specifiers declarator { block-item-list postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 


curr: <<  next: ch  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << postfix-expression 


curr: ->  next: id  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression << additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: pl08x  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: ->  next: base  


curr: ID  next: +  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 


curr: +  next: PL080_ERR_CLEAR  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression + primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression + postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression + unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression + cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression + multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: ch  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	ch = &pl08x->phy_chans[i];
curr: ID  next: =  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: &  next: pl08x  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: ->  next: phy_chans  


curr: ID  next: [  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: [  next: i  


curr: ID  next: ]  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression [ expression 


curr: ]  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: *  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	*mbus = &bd->dstbus;
curr: *  next: mbus  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: &  next: bd  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 


curr: ->  next: dstbus  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: llis_va  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	llis_va[num_llis].src = bd->srcbus.addr;
curr: ID  next: [  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: [  next: num_llis  


curr: ID  next: ]  
declaration-specifiers declarator { block-item-list postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ expression 


curr: ]  next: .  
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: src  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: bd  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: srcbus  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: .  next: addr  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: llis_va  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	llis_va[num_llis].lli = llis_bus + (num_llis + 1) * sizeof(struct pl08x_lli);
curr: ID  next: [  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: [  next: num_llis  


curr: ID  next: ]  
declaration-specifiers declarator { block-item-list postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ expression 


curr: ]  next: .  
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: lli  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: llis_bus  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: +  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 


curr: +  next: (  


curr: (  next: num_llis  


curr: ID  next: +  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression 


curr: +  next: 1  


curr: 1  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression + primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression + postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression + unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression + cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression + multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + ( expression 


curr: )  next: *  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression 


curr: *  next: sizeof  


curr: sizeof  next: (  


curr: (  next: struct  


curr: struct  next: pl08x_lli  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * sizeof ( struct-specifier 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * sizeof ( type-specifier 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * sizeof ( specifier-qualifier-list 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * sizeof ( type-name 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression * cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression + multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: bd  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	bd->dstbus.addr += len;
curr: ;  next: bd  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: dstbus  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: addr  


curr: ID  next: +=  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: +=  next: len  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: *  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	*cctl = pl08x_cctl_bits(*cctl, 1, 1, len);
curr: *  next: cctl  
here
declaration-specifiers declarator { block-item-list unary-operator 


curr: ID  next: =  
declaration-specifiers declarator { block-item-list unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: pl08x_cctl_bits  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: (  next: *  


curr: *  next: cctl  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-operator 


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: ,  next: 1  


curr: 1  next: ,  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: ,  next: 1  


curr: 1  next: ,  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: ,  next: len  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: (  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	(*total_bytes) += len;
curr: (  next: *  


curr: *  next: total_bytes  
here
declaration-specifiers declarator { block-item-list ( unary-operator 


curr: ID  next: )  
declaration-specifiers declarator { block-item-list ( unary-operator primary-expression 
declaration-specifiers declarator { block-item-list ( unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list ( unary-operator unary-expression 
declaration-specifiers declarator { block-item-list ( unary-operator cast-expression 
declaration-specifiers declarator { block-item-list ( unary-expression 
declaration-specifiers declarator { block-item-list ( cast-expression 
declaration-specifiers declarator { block-item-list ( multiplicative-expression 
declaration-specifiers declarator { block-item-list ( additive-expression 
declaration-specifiers declarator { block-item-list ( shift-expression 
declaration-specifiers declarator { block-item-list ( relational-expression 
declaration-specifiers declarator { block-item-list ( equality-expression 
declaration-specifiers declarator { block-item-list ( AND-expression 
declaration-specifiers declarator { block-item-list ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list ( logical-AND-expression 
declaration-specifiers declarator { block-item-list ( logical-OR-expression 
declaration-specifiers declarator { block-item-list ( conditional-expression 
declaration-specifiers declarator { block-item-list ( assignment-expression 
declaration-specifiers declarator { block-item-list ( expression 


curr: )  next: +=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: +=  next: len  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: bd  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	bd.lli_bus = (pl08x->lli_buses & PL08X_AHB2) ? PL080_LLI_LM_AHB2 : 0;
curr: ID  next: .  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: lli_bus  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: (  next: pl08x  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( postfix-expression 


curr: ->  next: lli_buses  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression 


curr: &  next: PL08X_AHB2  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator ( expression 


curr: )  next: ?  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 


curr: ?  next: PL080_LLI_LM_AHB2  


curr: ID  next: :  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression 


curr: :  next: 0  


curr: 0  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: prep_byte_width_lli  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	prep_byte_width_lli(&bd, &cctl, bd.remainder, num_llis++, &total_bytes);
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: bd  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: &  


curr: &  next: cctl  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator 


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: bd  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: .  next: remainder  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: num_llis  


curr: ID  next: ++  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: ++  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: &  


curr: &  next: total_bytes  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator 


curr: ID  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-operator cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: llis_va  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	llis_va[num_llis - 1].cctl |= PL080_CONTROL_TC_IRQ_EN;
curr: ID  next: [  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: [  next: num_llis  


curr: ID  next: -  
declaration-specifiers declarator { block-item-list postfix-expression [ primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression 


curr: -  next: 1  


curr: 1  next: ]  
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression - primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression - postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression - unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression - cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression - multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression [ expression 


curr: ]  next: .  
declaration-specifiers declarator { block-item-list postfix-expression 


curr: .  next: cctl  


curr: ID  next: |=  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: |=  next: PL080_CONTROL_TC_IRQ_EN  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: flag  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	flag = !(dst & PL08X_AHB1) || ((dst & PL08X_AHB2) && (src & PL08X_AHB1));
curr: ID  next: =  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: !  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: !  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: (  next: dst  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression 


curr: &  next: PL08X_AHB1  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( expression 


curr: )  next: ||  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 


curr: ||  next: (  


curr: (  next: (  


curr: (  next: dst  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression 


curr: &  next: PL08X_AHB2  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( ( expression 


curr: )  next: &&  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression 


curr: &&  next: (  


curr: (  next: src  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression 


curr: &  next: PL08X_AHB1  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && ( expression 


curr: )  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression && inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || ( expression 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression || logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: cctl  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	cctl &= ~(PL080_CONTROL_SRC_AHB2 | PL080_CONTROL_DST_AHB2 |
		  PL080_CONTROL_PROT_MASK);
curr: ID  next: &=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: &=  next: ~  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ~  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator 


curr: (  next: PL080_CONTROL_SRC_AHB2  


curr: ID  next: |  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression 


curr: |  next: PL080_CONTROL_DST_AHB2  


curr: ID  next: |  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression 


curr: |  next: PL080_CONTROL_PROT_MASK  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression | exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator ( expression 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: cctl  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	cctl |= width << PL080_CONTROL_SWIDTH_SHIFT;
curr: ID  next: |=  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: |=  next: width  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: <<  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 


curr: <<  next: PL080_CONTROL_SWIDTH_SHIFT  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: txd  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	txd->ccfg |= PL080_FLOW_MEM2MEM << PL080_CONFIG_FLOW_CONTROL_SHIFT;
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: ccfg  


curr: ID  next: |=  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: |=  next: PL080_FLOW_MEM2MEM  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: <<  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 


curr: <<  next: PL080_CONFIG_FLOW_CONTROL_SHIFT  


curr: ID  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression << additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: txd  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list

	txd->cctl = pl08x->pd->memcpy_channel.cctl_memcpy &
			~(PL080_CONTROL_DST_AHB2 | PL080_CONTROL_SRC_AHB2);
curr: ID  next: ->  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: ->  next: cctl  


curr: ID  next: =  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: pl08x  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: pd  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: memcpy_channel  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: .  next: cctl_memcpy  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 


curr: &  next: ~  


curr: ~  next: (  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator 


curr: (  next: PL080_CONTROL_DST_AHB2  


curr: ID  next: |  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression 


curr: |  next: PL080_CONTROL_SRC_AHB2  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression | exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator ( expression 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: dev_vdbg  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	dev_vdbg(&pl08x->adev->dev, "src=0x%08x%s/%u dst=0x%08x%s/%u len=%zu\n",
			bd.srcbus.addr, cctl & PL080_CONTROL_SRC_INCR ? "+" : "",
			bd.remainder);
curr: ID  next: (  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 


curr: (  next: pl08x  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list postfix-expression ( primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 


curr: ->  next: adev  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 


curr: ->  next: dev  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: src=0x%08x%s/%u dst=0x%08x%s/%u len=%zu
  


curr: STR  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: bd  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: .  next: srcbus  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: .  next: addr  


curr: ID  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: cctl  


curr: ID  next: &  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 


curr: &  next: PL080_CONTROL_SRC_INCR  


curr: ID  next: ?  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression & equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 


curr: ?  next: +  


curr: STR  next: :  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression 


curr: :  next:   


curr: STR  next: ,  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression ? expression : conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: ,  next: bd  


curr: ID  next: .  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 


curr: .  next: remainder  


curr: ID  next: )  
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , postfix-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , unary-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , cast-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , multiplicative-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , additive-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , shift-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , relational-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , equality-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , exclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , inclusive-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-AND-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , logical-OR-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , conditional-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list , assignment-expression 
declaration-specifiers declarator { block-item-list postfix-expression ( argument-expression-list 


curr: )  next: ;  
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 
declaration-specifiers declarator { block-item-list cast-expression 
declaration-specifiers declarator { block-item-list multiplicative-expression 
declaration-specifiers declarator { block-item-list additive-expression 
declaration-specifiers declarator { block-item-list shift-expression 
declaration-specifiers declarator { block-item-list relational-expression 
declaration-specifiers declarator { block-item-list equality-expression 
declaration-specifiers declarator { block-item-list AND-expression 
declaration-specifiers declarator { block-item-list exclusive-OR-expression 
declaration-specifiers declarator { block-item-list inclusive-OR-expression 
declaration-specifiers declarator { block-item-list logical-AND-expression 
declaration-specifiers declarator { block-item-list logical-OR-expression 
declaration-specifiers declarator { block-item-list conditional-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: res  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 

	res = dev->errors ? (dev->errors == -EPIPE ? -EPIPE : -EIO) : 0;
curr: ID  next: =  
declaration-specifiers declarator { block-item-list primary-expression 
declaration-specifiers declarator { block-item-list postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression 


curr: =  next: dev  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator 


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 


curr: ->  next: errors  


curr: ID  next: ?  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression 


curr: ?  next: (  


curr: (  next: dev  


curr: ID  next: ->  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( postfix-expression 


curr: ->  next: errors  


curr: ID  next: ==  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression 


curr: ==  next: -  


curr: -  next: EPIPE  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-operator 


curr: ID  next: ?  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression == relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression 


curr: ?  next: -  


curr: -  next: EPIPE  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-operator 


curr: ID  next: :  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression 


curr: :  next: -  


curr: -  next: EIO  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-operator 


curr: ID  next: )  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-operator primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-operator postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-operator unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-operator cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( logical-OR-expression ? expression : conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? ( expression 


curr: )  next: :  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? assignment-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression 


curr: :  next: 0  


curr: 0  next: ;  
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : primary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : postfix-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : unary-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : cast-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : multiplicative-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : additive-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : shift-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : relational-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : equality-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : exclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : inclusive-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : logical-AND-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : logical-OR-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator logical-OR-expression ? expression : conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator conditional-expression 
declaration-specifiers declarator { block-item-list unary-expression assignment-operator assignment-expression 
declaration-specifiers declarator { block-item-list assignment-expression 
declaration-specifiers declarator { block-item-list expression 


curr: ;  next: }  
declaration-specifiers declarator { block-item-list expression-statement 
declaration-specifiers declarator { block-item-list statement 
declaration-specifiers declarator { block-item-list block-item 
declaration-specifiers declarator { block-item-list 


curr: }  next: NULL  
declaration-specifiers declarator compound-statement 
function-definition 
function-definition-list 
translation-unit 
}

总结

到此,你应该对C运算符优先级有个更加清楚的认识了。完全没有那么复杂,一切都是那么自然而水到渠成!之前说到的“转圈圈”,在这里有很多体现!
有些书籍上写道,如果你不知道或者不清楚运算符之间的优先级,那么请用括号解决!这是个明智的选择!从内部归约上看这是增加 编译器的负担,从开发人员角度来讲这是在节省开发时间,这样做减少或避免由于运算符优先级而引入的bug。相对把工作量转给编译器而言,这个交易太值了!

特此声明:
21世纪什么最重要,开源!知识无贵贱,知识无国界!知识需要传播,知识需要应用!不要版权,但要尊重劳动,转载请注明出处!
作者:my_live_123
下篇:语句


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值