From patchwork Mon Mar 27 21:23:31 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 9647479 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id A2802601D7 for ; Mon, 27 Mar 2017 21:26:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9438B28419 for ; Mon, 27 Mar 2017 21:26:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 890812842E; Mon, 27 Mar 2017 21:26:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.3 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 379F328419 for ; Mon, 27 Mar 2017 21:26:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752229AbdC0V0j (ORCPT ); Mon, 27 Mar 2017 17:26:39 -0400 Received: from mail-wr0-f193.google.com ([209.85.128.193]:34873 "EHLO mail-wr0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751810AbdC0V0i (ORCPT ); Mon, 27 Mar 2017 17:26:38 -0400 Received: by mail-wr0-f193.google.com with SMTP id p52so14119073wrc.2 for ; Mon, 27 Mar 2017 14:26:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=wy3MYvudJuwMVA/AzdNK6y2IgY+q6qtFSornS2+b690=; b=atZEnJ65gNbgWRxwG5eIVFwTe7XV6U1EHzh/0WhGsnj0ckOr2IYbYYoutm27k6ezCM +Rhaq3fVsFQROZVbG4QdCBvXBjzoaIi38nrsCQWmPQk6LY/g3FFLwSzr4mYydl4qPPhw RlSmmPRKCVOuiSXNCWr+07m5f63tPLbJx/lHb0Xn5qw7fNxLgUSx+oXYgfq9fntrwmQx sRhdkakhFGGEjlnYI+fW8MZoTlT/mhlyEmZd1ty+8avw3Zh96JY4No5r+5OHX/yvur7p sDP4yYUfZhGMdPrDf+vaRZbQGk0Q9vXJz+19XKjUzi4+1C6VsjgKWN647y6AMHgRj//0 085Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=wy3MYvudJuwMVA/AzdNK6y2IgY+q6qtFSornS2+b690=; b=Vth/qy/f/PYppOCZgGidBhsWXb5WCupr9HvjUV33u+I9kFTRLWSRvgjTA0QiIJYuk/ lcIB+tCRlqzdKVpEQOs5sx5+S4mb5/bqDkWPqr5i84dBV3DDq6O38NPIYZdEOTjpGTiS tRl6+jTR5turewKHBv0pajbc9zfRWV6mGDafxXhk/Md5LzMiLekzi7R4a64dVs5QQHuN EEpQh0WJ5Almd9QEIh7s/nj4nn5gtjfl6KC9sG0xbv3F6ojgYdtCCYvY6g3RwoRKTlq4 Z/hx5uqnu6QarB4P77FEpgGPENjghM0LB4kuQNCvFeRkv5zt3fistadNAL1vrwrGb2o+ m5GA== X-Gm-Message-State: AFeK/H0/lApD0kTS2SqRErvPU3kw/+QxaqzcmMOeidNNckLUBQwRJEJkub3S7w4aGKXwBg== X-Received: by 10.28.46.198 with SMTP id u189mr11087003wmu.54.1490649991764; Mon, 27 Mar 2017 14:26:31 -0700 (PDT) Received: from localhost.localdomain ([2a02:a03f:802:b00:496:ae63:aebb:a034]) by smtp.gmail.com with ESMTPSA id k203sm973767wmk.4.2017.03.27.14.26.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 27 Mar 2017 14:26:31 -0700 (PDT) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: Christopher Li , Luc Van Oostenryck Subject: [PATCH v6 07/52] llvm: give a name to call's return values Date: Mon, 27 Mar 2017 23:23:31 +0200 Message-Id: <20170327212416.18536-8-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20170327212416.18536-1-luc.vanoostenryck@gmail.com> References: <20170327212416.18536-1-luc.vanoostenryck@gmail.com> Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Currently, a name is given to the result of instruction like binops, compares, ... but not to function calls. Functionally, it doesn't change anything but those names are useful by easing reading while debugging, reading the generated code, ... Fix this by giving a name to OP_CALL's result too. Signed-off-by: Luc Van Oostenryck --- sparse-llvm.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sparse-llvm.c b/sparse-llvm.c index 53c13122b..8de144e2a 100644 --- a/sparse-llvm.c +++ b/sparse-llvm.c @@ -297,6 +297,9 @@ static void pseudo_name(pseudo_t pseudo, char *buf) case PSEUDO_PHI: snprintf(buf, MAX_PSEUDO_NAME, "PHI%d", pseudo->nr); break; + case PSEUDO_VOID: + buf[0] = '\0'; + break; default: assert(0); } @@ -708,6 +711,8 @@ static void output_op_call(struct function *fn, struct instruction *insn) int n_arg = 0, i; struct instruction *arg; LLVMValueRef *args; + char name[64]; + n_arg = instruction_list_size(insn->arguments); args = calloc(n_arg, sizeof(LLVMValueRef)); @@ -718,7 +723,8 @@ static void output_op_call(struct function *fn, struct instruction *insn) } END_FOR_EACH_PTR(arg); func = pseudo_to_value(fn, insn, insn->func); - target = LLVMBuildCall(fn->builder, func, args, n_arg, ""); + pseudo_name(insn->target, name); + target = LLVMBuildCall(fn->builder, func, args, n_arg, name); insn->target->priv = target; }