1-- 2-- Copyright 2024 The Android Open Source Project 3-- 4-- Licensed under the Apache License, Version 2.0 (the "License"); 5-- you may not use this file except in compliance with the License. 6-- You may obtain a copy of the License at 7-- 8-- https://www.apache.org/licenses/LICENSE-2.0 9-- 10-- Unless required by applicable law or agreed to in writing, software 11-- distributed under the License is distributed on an "AS IS" BASIS, 12-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13-- See the License for the specific language governing permissions and 14-- limitations under the License. 15 16 17-- Represents a jitted code snippet. 18-- TODO(carlscab): Make public 19CREATE PERFETTO VIEW _jit_code ( 20 -- Unique jit code id. 21 jit_code_id UINT, 22 -- Time this code was created / allocated. 23 create_ts LONG, 24 -- Time this code was destroyed / deallocated. This is a upper bound, as we 25 -- can only detect deletions indirectly when new code is allocated overlapping 26 -- existing one. 27 estimated_delete_ts LONG, 28 -- Thread that generated the code. 29 utid UINT, 30 -- Start address for the generated code. 31 start_address LONG, 32 -- Size in bytes of the generated code. 33 size LONG, 34 -- Function name. 35 function_name STRING, 36 -- Jitted code (binary data). 37 native_code BYTES 38) AS 39SELECT 40 id AS jit_code_id, 41 create_ts, 42 estimated_delete_ts, 43 utid, 44 start_address, 45 size, 46 function_name, 47 base64_decode(native_code_base64) AS native_code 48FROM __intrinsic_jit_code; 49 50-- Represents a jitted frame. 51-- TODO(carlscab): Make public 52CREATE PERFETTO VIEW _jit_frame ( 53 -- Jitted code snipped the frame is in (joins with _jit_code.jit_code_id). 54 jit_code_id UINT, 55 -- Jitted frame (joins with stack_profile_frame.id). 56 frame_id UINT 57) AS 58SELECT 59 jit_code_id, 60 frame_id 61FROM 62 __intrinsic_jit_frame; 63