From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by sourceware.org (Postfix) with ESMTPS id 7FD8D3858D35 for ; Mon, 25 May 2020 09:39:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 7FD8D3858D35 IronPort-SDR: HQCVB/7UePEFFXDniq55JqUqV10iPwCDd7gMWnyXaonruhQsjqpUxtMNO/SRD/+cwZJq0tKHVx wht0301s5D/Q== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 May 2020 02:39:03 -0700 IronPort-SDR: tGTixChBnJHMQN3UuS932qQCIYqyyBokuCivBpjxrTyusY8avz3H5GhSCnYIdaqPwPPJFk+CRA q+Gf4MruCCkw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,433,1583222400"; d="scan'208";a="301378116" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by fmsmga002.fm.intel.com with ESMTP; 25 May 2020 02:39:02 -0700 Received: from ulvlx001.iul.intel.com (ulvlx001.iul.intel.com [172.28.207.17]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id 04P9d1xt026794; Mon, 25 May 2020 10:39:02 +0100 Received: from ulvlx001.iul.intel.com (localhost [127.0.0.1]) by ulvlx001.iul.intel.com with ESMTP id 04P9d1L3001361; Mon, 25 May 2020 11:39:01 +0200 Received: (from taktemur@localhost) by ulvlx001.iul.intel.com with LOCAL id 04P9d1wD001357; Mon, 25 May 2020 11:39:01 +0200 From: Tankut Baris Aktemur To: gdb-patches@sourceware.org Subject: [PATCH 0/3] Handling multiple JITers Date: Mon, 25 May 2020 11:38:44 +0200 Message-Id: X-Mailer: git-send-email 1.7.0.7 X-Spam-Status: No, score=-20.4 required=5.0 tests=AC_FROM_MANY_DOTS, BAYES_00, KAM_DMARC_NONE, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 May 2020 09:39:07 -0000 Hi, This short series is about handling multiple JITers. GDB defines an interface that JITers are expected to conform to, so that JITed code can be debugged. In particular, a JITer should invoke (empty) functions from that interface at important points in the JIT flow. GDB puts breakpoints at these functions to be notified about essential JIT events. See https://sourceware.org/gdb/current/onlinedocs/gdb/JIT-Interface.html GDB's internal JIT-tracking mechanism assumes that there is a single objfile that contains the JIT symbols on which GDB inserts the notification breakpoints. This brings the problem that if multiple JITers exist, only the first one will be decorated with JIT breakpoints and the JIT events from the others will be missed. The series proposed here makes GDB track multiple objfiles with JIT symbols. Regards. Baris Tankut Baris Aktemur (3): gdb/jit: use a map to store objfile and jit breakpoint info gdb/jit: enable tracking multiple jitter objfiles gdb/testsuite: fix minor things in jit tests gdb/jit.c | 229 ++++++++++--------- gdb/testsuite/gdb.base/jit-elf-so.exp | 2 +- gdb/testsuite/gdb.base/jit-reader-simple.exp | 47 +++- 3 files changed, 171 insertions(+), 107 deletions(-) -- 2.17.1