mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-18 19:44:00 +00:00
tools: avoid _paddingX in generated struct fields
This makes the generation script slightly simpler.
This commit is contained in:
committed by
Ron Evans
parent
374349cfa5
commit
93a06d1157
+11
-14
@@ -413,7 +413,6 @@ const (
|
|||||||
continue
|
continue
|
||||||
out.write('\n// {description}\ntype {groupName}_Type struct {{\n'.format(**peripheral))
|
out.write('\n// {description}\ntype {groupName}_Type struct {{\n'.format(**peripheral))
|
||||||
address = peripheral['baseAddress']
|
address = peripheral['baseAddress']
|
||||||
padNumber = 0
|
|
||||||
for register in peripheral['registers']:
|
for register in peripheral['registers']:
|
||||||
if address > register['address'] and 'registers' not in register :
|
if address > register['address'] and 'registers' not in register :
|
||||||
# In Nordic SVD files, these registers are deprecated or
|
# In Nordic SVD files, these registers are deprecated or
|
||||||
@@ -435,18 +434,17 @@ const (
|
|||||||
if address < register['address']:
|
if address < register['address']:
|
||||||
bytesNeeded = register['address'] - address
|
bytesNeeded = register['address'] - address
|
||||||
if bytesNeeded == 1:
|
if bytesNeeded == 1:
|
||||||
out.write('\t_padding{padNumber} {regType}\n'.format(padNumber=padNumber, regType='volatile.Register8'))
|
out.write('\t_ {regType}\n'.format(regType='volatile.Register8'))
|
||||||
elif bytesNeeded == 2:
|
elif bytesNeeded == 2:
|
||||||
out.write('\t_padding{padNumber} {regType}\n'.format(padNumber=padNumber, regType='volatile.Register16'))
|
out.write('\t_ {regType}\n'.format(regType='volatile.Register16'))
|
||||||
elif bytesNeeded == 3:
|
elif bytesNeeded == 3:
|
||||||
out.write('\t_padding{padNumber} [3]{regType}\n'.format(padNumber=padNumber, regType='volatile.Register8'))
|
out.write('\t_ [3]{regType}\n'.format(regType='volatile.Register8'))
|
||||||
else:
|
else:
|
||||||
numSkip = (register['address'] - address) // eSize
|
numSkip = (register['address'] - address) // eSize
|
||||||
if numSkip == 1:
|
if numSkip == 1:
|
||||||
out.write('\t_padding{padNumber} {regType}\n'.format(padNumber=padNumber, regType=regType))
|
out.write('\t_ {regType}\n'.format(regType=regType))
|
||||||
else:
|
else:
|
||||||
out.write('\t_padding{padNumber} [{num}]{regType}\n'.format(padNumber=padNumber, num=numSkip, regType=regType))
|
out.write('\t_ [{num}]{regType}\n'.format(num=numSkip, regType=regType))
|
||||||
padNumber += 1
|
|
||||||
address = register['address']
|
address = register['address']
|
||||||
|
|
||||||
lastCluster = False
|
lastCluster = False
|
||||||
@@ -467,18 +465,17 @@ const (
|
|||||||
if subaddress != subregister['address']:
|
if subaddress != subregister['address']:
|
||||||
bytesNeeded = subregister['address'] - subaddress
|
bytesNeeded = subregister['address'] - subaddress
|
||||||
if bytesNeeded == 1:
|
if bytesNeeded == 1:
|
||||||
regType += '\t\t_padding{padNumber} {subregType}\n'.format(padNumber=padNumber, subregType='volatile.Register8')
|
regType += '\t\t_ {subregType}\n'.format(subregType='volatile.Register8')
|
||||||
elif bytesNeeded == 2:
|
elif bytesNeeded == 2:
|
||||||
regType += '\t\t_padding{padNumber} {subregType}\n'.format(padNumber=padNumber, subregType='volatile.Register16')
|
regType += '\t\t_ {subregType}\n'.format(subregType='volatile.Register16')
|
||||||
else:
|
else:
|
||||||
numSkip = (subregister['address'] - subaddress)
|
numSkip = (subregister['address'] - subaddress)
|
||||||
if numSkip < 1:
|
if numSkip < 1:
|
||||||
continue
|
continue
|
||||||
elif numSkip == 1:
|
elif numSkip == 1:
|
||||||
regType += '\t\t_padding{padNumber} {subregType}\n'.format(padNumber=padNumber, subregType='volatile.Register8')
|
regType += '\t\t_ {subregType}\n'.format(subregType='volatile.Register8')
|
||||||
else:
|
else:
|
||||||
regType += '\t\t_padding{padNumber} [{num}]{subregType}\n'.format(padNumber=padNumber, num=numSkip, subregType='volatile.Register8')
|
regType += '\t\t_ [{num}]{subregType}\n'.format(num=numSkip, subregType='volatile.Register8')
|
||||||
padNumber += 1
|
|
||||||
subaddress += bytesNeeded
|
subaddress += bytesNeeded
|
||||||
if subregister['array'] is not None:
|
if subregister['array'] is not None:
|
||||||
subregSize = subregister['array'] * subregister['elementsize']
|
subregSize = subregister['array'] * subregister['elementsize']
|
||||||
@@ -490,9 +487,9 @@ const (
|
|||||||
if subaddress != register['address'] + register['elementsize']:
|
if subaddress != register['address'] + register['elementsize']:
|
||||||
numSkip = ((register['address'] + register['elementsize']) - subaddress) // subregSize
|
numSkip = ((register['address'] + register['elementsize']) - subaddress) // subregSize
|
||||||
if numSkip <= 1:
|
if numSkip <= 1:
|
||||||
regType += '\t\t_padding{padNumber} {subregType}\n'.format(padNumber=padNumber, subregType=subregType)
|
regType += '\t\t_ {subregType}\n'.format(subregType=subregType)
|
||||||
else:
|
else:
|
||||||
regType += '\t\t_padding{padNumber} [{num}]{subregType}\n'.format(padNumber=padNumber, num=numSkip, subregType=subregType)
|
regType += '\t\t_ [{num}]{subregType}\n'.format(num=numSkip, subregType=subregType)
|
||||||
else:
|
else:
|
||||||
lastCluster = True
|
lastCluster = True
|
||||||
regType += '\t}'
|
regType += '\t}'
|
||||||
|
|||||||
Reference in New Issue
Block a user