From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Subject: [PATCH v3 19/20] tracing: remove transform.py
Date: Sat, 4 Mar 2023 10:18:59 -0800 [thread overview]
Message-ID: <20230304181900.1097116-20-richard.henderson@linaro.org> (raw)
In-Reply-To: <20230304181900.1097116-1-richard.henderson@linaro.org>
This file, and a couple of uses, got left behind when the
tcg stuff was removed from tracetool.
Fixes: 126d4123c50a ("tracing: excise the tcg related from tracetool")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
Cc: Stefan Hajnoczi <stefanha@redhat.com>
---
meson.build | 1 -
scripts/tracetool/__init__.py | 23 -----
scripts/tracetool/transform.py | 168 ---------------------------------
3 files changed, 192 deletions(-)
delete mode 100644 scripts/tracetool/transform.py
diff --git a/meson.build b/meson.build
index e533d6c95b..6bcab8bf0d 100644
--- a/meson.build
+++ b/meson.build
@@ -2861,7 +2861,6 @@ tracetool_depends = files(
'scripts/tracetool/format/log_stap.py',
'scripts/tracetool/format/stap.py',
'scripts/tracetool/__init__.py',
- 'scripts/tracetool/transform.py',
'scripts/tracetool/vcpu.py'
)
diff --git a/scripts/tracetool/__init__.py b/scripts/tracetool/__init__.py
index 5393c7fc5c..33cf85e2b0 100644
--- a/scripts/tracetool/__init__.py
+++ b/scripts/tracetool/__init__.py
@@ -18,7 +18,6 @@
import tracetool.format
import tracetool.backend
-import tracetool.transform
def error_write(*lines):
@@ -190,18 +189,6 @@ def casted(self):
"""List of argument names casted to their type."""
return ["(%s)%s" % (type_, name) for type_, name in self._args]
- def transform(self, *trans):
- """Return a new Arguments instance with transformed types.
-
- The types in the resulting Arguments instance are transformed according
- to tracetool.transform.transform_type.
- """
- res = []
- for type_, name in self._args:
- res.append((tracetool.transform.transform_type(type_, *trans),
- name))
- return Arguments(res)
-
class Event(object):
"""Event description.
@@ -358,16 +345,6 @@ def api(self, fmt=None):
fmt = Event.QEMU_TRACE
return fmt % {"name": self.name, "NAME": self.name.upper()}
- def transform(self, *trans):
- """Return a new Event with transformed Arguments."""
- return Event(self.name,
- list(self.properties),
- self.fmt,
- self.args.transform(*trans),
- self.lineno,
- self.filename,
- self)
-
def read_events(fobj, fname):
"""Generate the output for the given (format, backends) pair.
diff --git a/scripts/tracetool/transform.py b/scripts/tracetool/transform.py
deleted file mode 100644
index ea8b27799d..0000000000
--- a/scripts/tracetool/transform.py
+++ /dev/null
@@ -1,168 +0,0 @@
-# -*- coding: utf-8 -*-
-
-"""
-Type-transformation rules.
-"""
-
-__author__ = "Lluís Vilanova <vilanova@ac.upc.edu>"
-__copyright__ = "Copyright 2012-2016, Lluís Vilanova <vilanova@ac.upc.edu>"
-__license__ = "GPL version 2 or (at your option) any later version"
-
-__maintainer__ = "Stefan Hajnoczi"
-__email__ = "stefanha@redhat.com"
-
-
-def _transform_type(type_, trans):
- if isinstance(trans, str):
- return trans
- elif isinstance(trans, dict):
- if type_ in trans:
- return _transform_type(type_, trans[type_])
- elif None in trans:
- return _transform_type(type_, trans[None])
- else:
- return type_
- elif callable(trans):
- return trans(type_)
- else:
- raise ValueError("Invalid type transformation rule: %s" % trans)
-
-
-def transform_type(type_, *trans):
- """Return a new type transformed according to the given rules.
-
- Applies each of the transformation rules in trans in order.
-
- If an element of trans is a string, return it.
-
- If an element of trans is a function, call it with type_ as its only
- argument.
-
- If an element of trans is a dict, search type_ in its keys. If type_ is
- a key, use the value as a transformation rule for type_. Otherwise, if
- None is a key use the value as a transformation rule for type_.
-
- Otherwise, return type_.
-
- Parameters
- ----------
- type_ : str
- Type to transform.
- trans : list of function or dict
- Type transformation rules.
- """
- if len(trans) == 0:
- raise ValueError
- res = type_
- for t in trans:
- res = _transform_type(res, t)
- return res
-
-
-##################################################
-# tcg -> host
-
-def _tcg_2_host(type_):
- if type_ == "TCGv":
- # force a fixed-size type (target-independent)
- return "uint64_t"
- else:
- return type_
-
-TCG_2_HOST = {
- "TCGv_i32": "uint32_t",
- "TCGv_i64": "uint64_t",
- "TCGv_ptr": "void *",
- None: _tcg_2_host,
- }
-
-
-##################################################
-# host -> host compatible with tcg sizes
-
-HOST_2_TCG_COMPAT = {
- "uint8_t": "uint32_t",
- "uint16_t": "uint32_t",
- }
-
-
-##################################################
-# host/tcg -> tcg
-
-def _host_2_tcg(type_):
- if type_.startswith("TCGv"):
- return type_
- raise ValueError("Don't know how to translate '%s' into a TCG type\n" % type_)
-
-HOST_2_TCG = {
- "uint32_t": "TCGv_i32",
- "uint64_t": "TCGv_i64",
- "void *" : "TCGv_ptr",
- "CPUArchState *": "TCGv_env",
- None: _host_2_tcg,
- }
-
-
-##################################################
-# tcg -> tcg helper definition
-
-def _tcg_2_helper_def(type_):
- if type_ == "TCGv":
- return "target_ulong"
- else:
- return type_
-
-TCG_2_TCG_HELPER_DEF = {
- "TCGv_i32": "uint32_t",
- "TCGv_i64": "uint64_t",
- "TCGv_ptr": "void *",
- None: _tcg_2_helper_def,
- }
-
-
-##################################################
-# tcg -> tcg helper declaration
-
-def _tcg_2_tcg_helper_decl_error(type_):
- raise ValueError("Don't know how to translate type '%s' into a TCG helper declaration type\n" % type_)
-
-TCG_2_TCG_HELPER_DECL = {
- "TCGv" : "tl",
- "TCGv_ptr": "ptr",
- "TCGv_i32": "i32",
- "TCGv_i64": "i64",
- "TCGv_env": "env",
- None: _tcg_2_tcg_helper_decl_error,
- }
-
-
-##################################################
-# host/tcg -> tcg temporal constant allocation
-
-def _host_2_tcg_tmp_new(type_):
- if type_.startswith("TCGv"):
- return "tcg_temp_new_nop"
- raise ValueError("Don't know how to translate type '%s' into a TCG temporal allocation" % type_)
-
-HOST_2_TCG_TMP_NEW = {
- "uint32_t": "tcg_const_i32",
- "uint64_t": "tcg_const_i64",
- "void *" : "tcg_const_ptr",
- None: _host_2_tcg_tmp_new,
- }
-
-
-##################################################
-# host/tcg -> tcg temporal constant deallocation
-
-def _host_2_tcg_tmp_free(type_):
- if type_.startswith("TCGv"):
- return "tcg_temp_free_nop"
- raise ValueError("Don't know how to translate type '%s' into a TCG temporal deallocation" % type_)
-
-HOST_2_TCG_TMP_FREE = {
- "uint32_t": "tcg_temp_free_i32",
- "uint64_t": "tcg_temp_free_i64",
- "void *" : "tcg_temp_free_ptr",
- None: _host_2_tcg_tmp_free,
- }
--
2.34.1
next prev parent reply other threads:[~2023-03-04 18:21 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-04 18:18 [PATCH v3 00/20] tcg: drop tcg_temp_free from translators Richard Henderson
2023-03-04 18:18 ` [PATCH v3 01/20] target/i386: Drop tcg_temp_free Richard Henderson
2023-03-05 17:43 ` Peter Maydell
2023-03-04 18:18 ` [PATCH v3 02/20] target/mips: Drop tcg_temp_free from micromips_translate.c.inc Richard Henderson
2023-03-04 18:18 ` [PATCH v3 03/20] target/mips: Drop tcg_temp_free from mips16e_translate.c.inc Richard Henderson
2023-03-04 22:23 ` Jiaxun Yang
2023-03-04 18:18 ` [PATCH v3 04/20] target/mips: Drop tcg_temp_free from msa_translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 05/20] target/mips: Drop tcg_temp_free from mxu_translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 06/20] target/mips: Drop tcg_temp_free from nanomips_translate.c.inc Richard Henderson
2023-03-04 18:18 ` [PATCH v3 07/20] target/mips: Drop tcg_temp_free from octeon_translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 08/20] target/mips: Drop tcg_temp_free from translate_addr_const.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 09/20] target/mips: Drop tcg_temp_free from tx79_translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 10/20] target/mips: Fix trans_mult_acc return Richard Henderson
2023-03-04 18:18 ` [PATCH v3 11/20] target/mips: Drop tcg_temp_free from vr54xx_translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 12/20] target/mips: Drop tcg_temp_free from translate.c Richard Henderson
2023-03-04 18:18 ` [PATCH v3 13/20] target/s390x: Drop free_compare Richard Henderson
2023-03-06 10:50 ` Ilya Leoshkevich
2023-03-06 11:00 ` David Hildenbrand
2023-03-04 18:18 ` [PATCH v3 14/20] target/s390x: Drop tcg_temp_free from translate_vx.c.inc Richard Henderson
2023-03-06 10:51 ` Ilya Leoshkevich
2023-03-06 11:01 ` David Hildenbrand
2023-03-04 18:18 ` [PATCH v3 15/20] target/s390x: Drop tcg_temp_free from translate.c Richard Henderson
2023-03-06 10:52 ` Ilya Leoshkevich
2023-03-06 11:01 ` David Hildenbrand
2023-03-04 18:18 ` [PATCH v3 16/20] target/s390x: Remove assert vs g_in2 Richard Henderson
2023-03-06 10:53 ` Ilya Leoshkevich
2023-03-06 11:01 ` David Hildenbrand
2023-03-04 18:18 ` [PATCH v3 17/20] target/s390x: Remove g_out, g_out2, g_in1, g_in2 from DisasContext Richard Henderson
2023-03-06 11:02 ` David Hildenbrand
2023-03-06 11:06 ` Ilya Leoshkevich
2023-03-04 18:18 ` [PATCH v3 18/20] target/tricore: Drop tcg_temp_free Richard Henderson
2023-03-05 17:42 ` Peter Maydell
2023-03-04 18:18 ` Richard Henderson [this message]
2023-03-05 17:19 ` [PATCH v3 19/20] tracing: remove transform.py Alex Bennée
2023-03-06 17:41 ` Stefan Hajnoczi
2023-03-04 18:19 ` [PATCH v3 20/20] tcg: Create tcg/tcg-temp-internal.h Richard Henderson
2023-03-05 17:20 ` Alex Bennée
2023-03-06 8:06 ` [PATCH v3 00/20] tcg: drop tcg_temp_free from translators Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230304181900.1097116-20-richard.henderson@linaro.org \
--to=richard.henderson@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).