From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@google.com header.s=20161025 header.b=E7uYJvFe; spf=pass (domain: google.com, ip: 209.85.166.170, mailfrom: gzibrat@google.com) Received: from mail-it1-f170.google.com (mail-it1-f170.google.com [209.85.166.170]) by groups.io with SMTP; Mon, 08 Apr 2019 14:12:16 -0700 Received: by mail-it1-f170.google.com with SMTP id y134so1490222itc.5 for ; Mon, 08 Apr 2019 14:12:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=trvA/UZGnsoLm8nIDLCHdLkYIPNSVT8pmuauEgCI+/M=; b=E7uYJvFe6EuyFwQmKhq/yrelA8enPCbJswoKgZiQqahIn3+SSdVwf1+8/16EEvOymt uBeYqkW1LoFYSKeqVlAGXqkEVAjnlj5hvRUuDEUptS+elWWMsaouybcgBpS6H09uMAzP 0HxJ0BPoPVM+PDrRMaFUimSX8mWnLNQDOBHZLH4jm3cjEWJGsAe1NpBWnmhm8iMICqcQ RCSVkN1YHQojEkbbLBiqyCqrvLyed6nzuPUegITkvM43tkK9RkYOD8zV+yHp15mbTv5+ oByWYsVOMO8CUPLAqh5JCyuAnZl5yWrmbeL50PTI0IyalrRns9syGv7dYH+J62dELnlK ZSKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=trvA/UZGnsoLm8nIDLCHdLkYIPNSVT8pmuauEgCI+/M=; b=DYrQwfwvqdN+dRbpTfHQyrRs4IHV1RVT4tdakn+2fsyoBgRDabYBpD9ThJN4/igqMs A4cfW/ifj3ZMfqLLDM3UzAgVNXyZSvlsexl+tSA4zMHNCea2cZcfSWCc7TBE/k+IntM4 kuZN1yJeLwjwJnwYDQnKeRkTQZB9EufZhKAU3kLOd8bIGQqz+9JonMD23ZHSpQBBm4aW 49vMRz8zj5zS9qIvn8pazeY7wq3L6KfhyNhtbDRn8RRxhB4E9KKHTPJSqdM5Yyo/iIbu 6AVAAaAbEYbep+Vc0BqQ7j2ePm4wk1VEvkRsgiFi93Rit32Go0BzYyoci4BUaTZrR98D 4JKA== X-Gm-Message-State: APjAAAXUilYrTps3zWBlfqmYEvT1omWgW31XNvy8H3U/x5yi7k3HeRWI OIqSxseRrA/5KC59ePZskfkPxsmgUm8zfB3y/S4KPw== X-Google-Smtp-Source: APXvYqxqC0bFLj0RPHP90jiZuS8xjqUMY0a206cyT8vIAgNBq9FmBr3rWz1o8QfQbrUYA9jYotm/zXCmsi8FSNc7Zok= X-Received: by 2002:a24:c544:: with SMTP id f65mr22362289itg.90.1554757935259; Mon, 08 Apr 2019 14:12:15 -0700 (PDT) MIME-Version: 1.0 References: <2A7A0205-FADC-4E8F-B744-E0B5C476A2C6@apple.com> In-Reply-To: From: "Gary Zibrat" Date: Mon, 8 Apr 2019 14:12:04 -0700 Message-ID: Subject: Re: [edk2-devel] Why is specified -mno-sse on clang x64? To: Andrew Fish Cc: devel@edk2.groups.io Content-Type: multipart/alternative; boundary="00000000000071a94a05860b4ad4" --00000000000071a94a05860b4ad4 Content-Type: text/plain; charset="UTF-8" I've messed around with it locally and nothing seemed to stop working. Would there be any interest in adding a newer clang configuration with -mno-sse removed? On Thu, Apr 4, 2019 at 1:12 PM Andrew Fish wrote: > > > On Apr 4, 2019, at 1:09 PM, Gary Zibrat via Groups.Io < > gzibrat=google.com@groups.io> wrote: > > It seems like the "-mno-mmx -msoft-float -mno-implicit-float" part of the > flags should be enough to handle that now. > Is it ok to take -mno-sse out (in my local branch) for new versions of > clang without having to worry about silent failures? > Since EFIAPI uses the windows ABI, it should be ok to use XMM registers > for integer operations. > ' > > > Gary, > > Conceptually it should be OK. But obviously no one has tested it :). > > Thanks, > > Andrew Fish > > > On Thu, Apr 4, 2019 at 1:00 PM Andrew Fish wrote: > >> Gary, >> >> The edk2 is freestanding UEFI firmware and the runtime does not support >> floating point exceptions. >> >> I think a long time ago there was an optimization bug and the -mno-sse >> fixed it. >> >> The UEFI x64 ABI is Windows like and not Sys V like. >> >> Thanks, >> >> Andrew Fish >> >> On Apr 4, 2019, at 10:13 AM, Gary Zibrat via Groups.Io < >> gzibrat=google.com@groups.io> wrote: >> >> Does anyone know why -mno-sse is specified on Clang x64? >> >> https://github.com/tianocore/edk2/commit/6f756db5ea057ff10dd168c7627163cec046a3d9 >> There doesn't seem to be a corresponding flag for other compilers. >> >> I ask because a commit in LLVM breaks compilation of EDK2: >> https://reviews.llvm.org/rL357317#change-QSW9B7DqCGUI >> >> >> > > > --00000000000071a94a05860b4ad4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've messed around with it locally and nothing seemed = to stop working.
Would there be any interest in adding a newer clang co= nfiguration with -mno-sse removed?

On Thu, Apr 4, 2019 at 1:12 PM Andr= ew Fish <afish@apple.com> wrot= e:


On= Apr 4, 2019, at 1:09 PM, Gary Zibrat via Groups.Io <gzibrat=3Dgoogle.com@group= s.io> wrote:

It seems like the &q= uot;-mno-mmx -msoft-float -mno-implicit-float" part of the flags shoul= d be enough to handle that now.
Is it ok to take -mno-sse out= (in my local branch) for new versions of clang without having to worry abo= ut silent failures?
Since EFIAPI uses the windows ABI= , it should be ok to use XMM registers for integer operations.
&= #39;

Gary,
<= div>
Conceptually it should be OK. But obviously no one has t= ested it :).=C2=A0

Thanks,

Andrew Fish


= On Thu, Apr 4, 2019 at 1:00 PM Andrew Fish <afish@apple.com> wrote:
Gary,

The e= dk2 is freestanding UEFI firmware and the runtime does not support floating= point exceptions.=C2=A0

I think a long time ago t= here was an optimization bug and the -mno-sse fixed it.=C2=A0
The UEFI x64 ABI is Windows like and not Sys V like.=C2=A0
<= div>
Thanks,

Andrew Fish
On Apr 4, 2019, at 10:13 AM, Gary Zibrat vi= a Groups.Io <gzibrat=3Dgoogle.com@groups.io> wrote:

Does anyone know why -mno-sse is specified = on Clang x64?
There doesn't seem to be a corresponding flag for other comp= ilers.

I ask because a commit in LLVM breaks c= ompilation of EDK2:
https://reviews.llvm.org/rL357317#change-= QSW9B7DqCGUI


--00000000000071a94a05860b4ad4--