From patchwork Tue Feb 12 07:36:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 158126 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp3527918jaa; Mon, 11 Feb 2019 23:37:57 -0800 (PST) X-Google-Smtp-Source: AHgI3IarnzbKhLrhIZJ8kBrjuoJlQk/8/BJX1skMzMdCfD9A6M9HqsEocWe2gqM8xFWgjhp0wc3q X-Received: by 2002:a25:d06:: with SMTP id 6mr1794624ybn.433.1549957077683; Mon, 11 Feb 2019 23:37:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549957077; cv=none; d=google.com; s=arc-20160816; b=cTA4IxCYseOoYzdy+OeYqqoNtmzx0xAJeDck34nvZovoePnMm7Nd1S8D2IxG/GgMN4 mqmkRbEzkYoHJVF5tOweo8+S8TUPdsKpfc2F/FhmfThpDq/h4cQySblUoR57TemeEUgG 6K1x/Ba4QM0d3LjAqBqUialMs0hWHyNRT+PtyI87AAWbwpjB92SdpREOF6uQ+lefc7c8 UK/tva1odREk0CD56U/Hd3DVSIChJz8fToHO7nHi0rRKiF8699VR/5rzz+T9CixYCzsj rvsdha9x03+qmO8FS4QhevemMONYroy+bsyIRfbfIsRbj7h+uA4tTF4QI/+nANqDT6m7 UGTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:message-id:date:to:from :dkim-signature; bh=A7FVe37+4EEKy3dze1bujYPlELqLCG2EDLZl1vW2TcA=; b=SahQx01Tyxotx5kYWXiu6Mrw+vgsPKRqJ0eeIMIh6aJA6XT9Uy7dgI1YR7dawAoRI2 Bt0h5trlzru3wtHB+G3seGzOQwVUFNU5USWlZnFTSvhaUQeTWWHxmLqfBXDX+oCfrkGl pPcMfG+ZrFTF5lROpCUdUJGJ8EcpPdUhHPHHsdWFb9QcgHoE5rrpybVIHS+hGlwTbZIi jP6ODQAnBrird+R8S5WHzrMqvu0ogT3YKFkhfBVBrZ5ODwhckVxqvJe6ZQBcCjyaRhgx rSQqJBqHeigFEwztmYnN2o3Z/hi3VrYTgcWm/gzbCY1TzSncjUNk0TNRaQsuNfhV8mVo Utnw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=l4mEV8Qu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id l13si7548122ywm.209.2019.02.11.23.37.57 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 11 Feb 2019 23:37:57 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=l4mEV8Qu; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([127.0.0.1]:35050 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtSdh-0002tD-9b for patch@linaro.org; Tue, 12 Feb 2019 02:37:57 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41844) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtScP-0002Xl-1V for qemu-devel@nongnu.org; Tue, 12 Feb 2019 02:36:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gtScN-0002Sk-Vl for qemu-devel@nongnu.org; Tue, 12 Feb 2019 02:36:36 -0500 Received: from mail-pl1-x641.google.com ([2607:f8b0:4864:20::641]:35289) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gtScM-0002O1-TI for qemu-devel@nongnu.org; Tue, 12 Feb 2019 02:36:35 -0500 Received: by mail-pl1-x641.google.com with SMTP id p8so903211plo.2 for ; Mon, 11 Feb 2019 23:36:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=A7FVe37+4EEKy3dze1bujYPlELqLCG2EDLZl1vW2TcA=; b=l4mEV8Qu3tredS83Ne2lYcw25ASqKl2XCXFqsKtchS4/1sJGSctvu4rRbUh2FC9bbb jHv6JoMu6wi7ydqTFynEpEOp2lhu8t+p+gLX4yExsDF1S7E2JENcfjq5WdtQC+e1nTkb 64Gv4eS6PaaHFjRWImoT2qJvkr2QB4jU7c8P9AeTcYFYs29E0H2nmkqd7XyQINgKsk6q bPqGhiW52lDvczNBdq0iHG1gTdLmFjiCmFUSNyOw2lCm/YluO4t7yesSw4DcSnPt+bD5 bOuwwQS7nlQhAuiWwrtFu4K5EScLCR1yAHGUhmUlTmHK+OVNWZMUXorbG/XLfSwFAeRG G06A== 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; bh=A7FVe37+4EEKy3dze1bujYPlELqLCG2EDLZl1vW2TcA=; b=VWYHjrEje05zx6iG7FqGV/v3rCsTXMGG6eEB1jkOhVu89Q0I6R7RCce52R1TqAJZ7Q h1Eh53hJmyBPYq2D9kiLe2T6DcZOD001plep1jH6C8T+dMKW81f36qe4OPvC8+mANueN 9tfQu1zJLR641eUnUmKKXzYgYLiiU6pewV1EAAEJqaz5erLXcNW6XW5GMzlqGpmWyV99 BbTAU1yKLXuun9k1QUZ0l27D7PriKcnTCe8vCmDGqrAJo4RvnWX+rDrj66o2ykPXrGyT z178VANpACI5drdX+9F5w3HxQlYl2/CHrMkkqfNhfMym5L/pRUgCM/myS4Yi7SlgqEJD gfDg== X-Gm-Message-State: AHQUAuald2DeRhwu9RdyWcPEQWZgA+coWu+uWrYihUPIodzRJLRriXZB dav9xrQrjaapeLothgbHs6x9cPvU3FM= X-Received: by 2002:a17:902:449:: with SMTP id 67mr2655517ple.310.1549956990039; Mon, 11 Feb 2019 23:36:30 -0800 (PST) Received: from cloudburst.twiddle.net (97-113-188-82.tukw.qwest.net. [97.113.188.82]) by smtp.gmail.com with ESMTPSA id s190sm24703304pfb.103.2019.02.11.23.36.28 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 11 Feb 2019 23:36:29 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Mon, 11 Feb 2019 23:36:28 -0800 Message-Id: <20190212073628.9665-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.2 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::641 Subject: [Qemu-devel] [PATCH] linux-user: Add AT_PLATFORM for arm X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 1813034@bugs.launchpad.net, qemu-arm@nongnu.org, laurent@vivier.eu Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Fixes: https://bugs.launchpad.net/bugs/1813034 Signed-off-by: Richard Henderson --- linux-user/elfload.c | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) -- 2.17.2 diff --git a/linux-user/elfload.c b/linux-user/elfload.c index 775a36ccdd..dde640a2ea 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -500,6 +500,35 @@ static uint32_t get_elf_hwcap2(void) #undef GET_FEATURE #undef GET_FEATURE_ID +#define ELF_PLATFORM get_elf_platform() + +static const char *get_elf_platform(void) +{ + CPUARMState *env = thread_cpu->env_ptr; + +#ifdef TARGET_WORDS_BIGENDIAN +# define END "b" +#else +# define END "l" +#endif + + if (arm_feature(env, ARM_FEATURE_V7)) { + if (arm_feature(env, ARM_FEATURE_M)) { + return "v7m" END; + } else { + return "v7" END; + } + } else if (arm_feature(env, ARM_FEATURE_V6)) { + return "v6" END; + } else if (arm_feature(env, ARM_FEATURE_V5)) { + return "v5" END; + } else { + return "v4" END; + } + +#undef END +} + #else /* 64 bit ARM definitions */ #define ELF_START_MMAP 0x80000000