mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 01:33:56 -06:00
target/hexagon: import parser for idef-parser
Signed-off-by: Alessandro Di Federico <ale@rev.ng> Signed-off-by: Paolo Montesel <babush@rev.ng> Signed-off-by: Anton Johansson <anjo@rev.ng> Signed-off-by: Taylor Simpson <tsimpson@quicinc.com> Reviewed-by: Taylor Simpson <tsimpson@quicinc.com> Message-Id: <20220923173831.227551-10-anjo@rev.ng>
This commit is contained in:
parent
fd8171fe52
commit
c0a41ee631
4 changed files with 3730 additions and 0 deletions
|
@ -203,6 +203,35 @@ if idef_parser_enabled and 'hexagon-linux-user' in target_dirs
|
|||
output: ['@BASENAME@.yy.c', '@BASENAME@.yy.h'],
|
||||
arguments: ['-o', '@OUTPUT0@', '--header-file=@OUTPUT1@', '@INPUT@']
|
||||
)
|
||||
|
||||
bison = generator(
|
||||
find_program('bison'),
|
||||
output: ['@BASENAME@.tab.c', '@BASENAME@.tab.h'],
|
||||
arguments: ['@INPUT@', '--defines=@OUTPUT1@', '--output=@OUTPUT0@']
|
||||
)
|
||||
|
||||
glib_dep = dependency('glib-2.0', native: true)
|
||||
|
||||
idef_parser = executable(
|
||||
'idef-parser',
|
||||
[flex.process(idef_parser_dir / 'idef-parser.lex'),
|
||||
bison.process(idef_parser_dir / 'idef-parser.y'),
|
||||
idef_parser_dir / 'parser-helpers.c'],
|
||||
include_directories: ['idef-parser', '../../include/'],
|
||||
dependencies: [glib_dep],
|
||||
c_args: ['-Wextra'],
|
||||
native: true
|
||||
)
|
||||
|
||||
idef_generated_tcg = custom_target(
|
||||
'idef-generated-tcg',
|
||||
output: ['idef-generated-emitter.c',
|
||||
'idef-generated-emitter.h.inc',
|
||||
'idef-generated-enabled-instructions'],
|
||||
input: preprocessed_idef_parser_input_generated,
|
||||
depend_files: [hex_common_py],
|
||||
command: [idef_parser, '@INPUT@', '@OUTPUT0@', '@OUTPUT1@', '@OUTPUT2@']
|
||||
)
|
||||
endif
|
||||
|
||||
target_arch += {'hexagon': hexagon_ss}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue