Displaying 14 results from an estimated 14 matches for "getenvironment".
2014 Jun 19
2
[LLVMdev] [PATCH] triples for baremetal
...OS ||
!Triple.isOSBinFormatMachO())
D.Diag(diag::warn_drv_assuming_mfloat_abi_is) << "soft";
break;
@@ -756,7 +756,7 @@
// The backend is hardwired to assume AAPCS for M-class processors, ensure
// the frontend matches that.
if (Triple.getEnvironment() == llvm::Triple::EABI ||
- (Triple.getOS() == llvm::Triple::UnknownOS &&
+ (Triple.getOS() == llvm::Triple::NoneOS &&
Triple.getObjectFormat() == llvm::Triple::MachO) ||
StringRef(CPUName).startswith("cortex-m")) {
ABIName = "...
2013 Aug 22
0
[LLVMdev] [RFC PATCH] X32 ABI support for Clang/compiler-rt (Clang patch)
...(Builder, "i386", Opts);
}
@@ -3013,20 +3021,31 @@
class X86_64TargetInfo : public X86TargetInfo {
public:
X86_64TargetInfo(const llvm::Triple &Triple) : X86TargetInfo(Triple)
{
- LongWidth = LongAlign = PointerWidth = PointerAlign = 64;
+ const bool IsX32 = (getTriple().getEnvironment() ==
llvm::Triple::GNUX32);
+ LongWidth = LongAlign = PointerWidth = PointerAlign = IsX32 ? 32 :
64;
LongDoubleWidth = 128;
LongDoubleAlign = 128;
LargeArrayMinWidth = 128;
LargeArrayAlign = 128;
SuitableAlign = 128;
- IntMaxType = SignedLong;
- UIntMaxType = Unsig...
2016 Jun 15
2
Sincos for X86_64's GNUX32 and ARM's GNUEABI/GNUEABIHF enviroments
...it here since that patch has a '[mips]' tag and therefore might not be noticed by someone who knows.
I've noticed that the GNUX32 and GNUEABI/GNUEABIHF environments don't make use of the sincos libcall like the GNU environment does because the guarding condition for this is 'TT.getEnvironment() == Triple::GNU'. The comment in canCombineSinCosLibcall() in LegalizeDAG.cpp suggests that it's intending to use sincos for all GNU environments so I'm wondering whether the exclusion of GNUX32/GNUEABI/GNUEABIHF is deliberate or not.
Can anyone confirm?
Thanks.
2013 Aug 22
3
[LLVMdev] [NEW PATCH] X32 ABI support for Clang/compiler-rt (Clang patch)
...(Builder, "i386", Opts);
}
@@ -3013,20 +3021,31 @@
class X86_64TargetInfo : public X86TargetInfo {
public:
X86_64TargetInfo(const llvm::Triple &Triple) : X86TargetInfo(Triple)
{
- LongWidth = LongAlign = PointerWidth = PointerAlign = 64;
+ const bool IsX32 = (getTriple().getEnvironment() ==
llvm::Triple::GNUX32);
+ LongWidth = LongAlign = PointerWidth = PointerAlign = IsX32 ? 32 :
64;
LongDoubleWidth = 128;
LongDoubleAlign = 128;
LargeArrayMinWidth = 128;
LargeArrayAlign = 128;
SuitableAlign = 128;
- IntMaxType = SignedLong;
- UIntMaxType = Unsig...
2013 Aug 22
7
[LLVMdev] [RFC PATCH] X32 ABI support for Clang/compiler-rt
Hi,
I'm working on bringing up complete coverage for a Gentoo x32 "desktop"
system. I've been cooking up quite a few patches for various packages
to push upstream, but right now, the biggest blocker is the lack of
support for building with/codegen targeting x32 in llvm/clang. Since
the x32 patches were sent last year, I see support code has landed in
LLVM, and basic handling of
2014 Jun 17
4
[LLVMdev] triples for baremetal
[+llvmdev, -llvm-dev]
(Oopsies, llvmdev doesn't have a hyphen in it like all the others do)
On 6/17/14, 10:45 AM, Jonathan Roelofs wrote:
> [+llvm-dev, cfe-dev]
>
> Was "Re: [PATCH] ARM: allow inline atomics on Cortex M"
>
> On 6/17/14, 10:42 AM, Jonathan Roelofs wrote:
>>
>>
>> On 6/17/14, 9:35 AM, Renato Golin wrote:
>>> On 17 June 2014
2017 Mar 29
3
clang 4.0.0: Invalid code for builtin floating point function with -mfloat-abi=hard -ffast-math (ARM)
On 29 March 2017 at 02:33, Saleem Abdulrasool <compnerd at compnerd.org> wrote:
> sin/cos are libm functions, and so a libcall to those need to honour the
> floating point ABI requests. The calling convention to be followed there
> should match `-mfloat-abi` (that is, -mfloat-abi=hard => AAPCS/VFP,
> -mfloat-abi=soft => AAPCS).
Exactly, but they're not, and that's
2012 Jan 09
0
[LLVMdev] generating ELF files on non-ELF platforms with MC
...p;MAB,
raw_ostream &_OS,
MCCodeEmitter *_Emitter,
bool RelaxAll,
bool NoExecStack) {
Triple TheTriple(TT);
if (TheTriple.isOSDarwin() || TheTriple.getEnvironment() == Triple::MachO)
return createMachOStreamer(Ctx, MAB, _OS, _Emitter, RelaxAll);
if (TheTriple.isOSWindows())
return createWinCOFFStreamer(Ctx, MAB, *_Emitter, _OS, RelaxAll);
return createELFStreamer(Ctx, MAB, _OS, _Emitter, RelaxAll, NoExecStack);
}
---------------
Would it be OK...
2014 Jul 02
6
[LLVMdev] Upstreaming x32 ABI support
...y there)
* Michael Liao work done ~2 years ago and available here:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120604/058450.html
What’s currently in trunk:
* Triplet x86_64-*-linux-gnux32 (command line support, EnvironmentType
enum to differentiate x32 from x86_64 by getTriple().getEnvironment()
== llvm::Triple::GNUX32)
https://github.com/llvm-mirror/llvm/commit/9dd2a3b1f2c253e20262535bb89b1ab6cc680ece
* ILP32/LP64 differentiation for TargetMachine
https://github.com/llvm-mirror/llvm/commit/a5597f0eaf1f93c6d0bc641a0cc54ecffb33955a
* LEA tuning:
https://github.com/llvm-mirror/llvm/commit/...
2012 Jan 09
1
[LLVMdev] FW: generating ELF files on non-ELF platforms with MC
...p;MAB,
raw_ostream &_OS,
MCCodeEmitter *_Emitter,
bool RelaxAll,
bool NoExecStack) {
Triple TheTriple(TT);
if (TheTriple.isOSDarwin() || TheTriple.getEnvironment() == Triple::MachO)
return createMachOStreamer(Ctx, MAB, _OS, _Emitter, RelaxAll);
if (TheTriple.isOSWindows())
return createWinCOFFStreamer(Ctx, MAB, *_Emitter, _OS, RelaxAll);
return createELFStreamer(Ctx, MAB, _OS, _Emitter, RelaxAll, NoExecStack);
}
---------------
Would it be OK...
2012 Jan 04
4
[LLVMdev] generating ELF files on non-ELF platforms with MC
Hello,
We're currently working on MC-JIT, focusing on runtime generation and loading of ELF object files, even on non-ELF platforms (i.e. Windows). However, we run into a problem with MC insisting to generate COFF objects on Windows, MachO on Macs and ELF only otherwise, based on the triple.
Is there an existing method to generate ELF objects with MC on Windows, without modifying MC?
Thanks
2013 Aug 22
1
[LLVMdev] X32 ABI support for Clang/compiler-rt (re: clang patch)
On Thu, 2013-08-22 at 12:29 +0400, Alexey Samsonov wrote:
> On Thu, Aug 22, 2013 at 11:56 AM, Steven Newbury <steve at snewbury.org.uk>wrote:
>
> > On Thu, 2013-08-22 at 11:50 +0400, Alexey Samsonov wrote:
> > > On Thu, Aug 22, 2013 at 11:39 AM, Steven Newbury <steve at snewbury.org.uk
> > >wrote:
> > >
> > > > On Thu, 2013-08-22 at
2014 Apr 15
10
[LLVMdev] [PATCH] Seh exceptions on Win64
Hi,
I'd like to submit a patch to match the clang patch on the front end.
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20140414/103257.html
The front end doesn't need this patch to work but it's still important.
This is mostly based on work done by kai from redstar.de
Could I get some feedback on this?
I'm not sure if the emitting of the register names will effect
2013 Sep 25
1
[LLVMdev] arm64 / iOS support
...le::x86 || Arch == Triple::x86_64 ||
Arch == Triple::arm || Arch == Triple::thumb ||
Arch == Triple::ppc || Arch == Triple::ppc64 ||
- Arch == Triple::UnknownArch) &&
+ Arch == Triple::UnknownArch || Arch == Triple::aarch64) &&
(T.isOSDarwin() || T.getEnvironment() == Triple::MachO)) {
Env = IsMachO;
InitMachOMCObjectFileInfo(T);
diff --git a/lib/Target/AArch64/AArch64AsmPrinter.cpp b/lib/Target/AArch64/AArch64AsmPrinter.cpp
index 759809f..2a38247 100644
--- a/lib/Target/AArch64/AArch64AsmPrinter.cpp
+++ b/lib/Target/AArch64/AArch64AsmPrinter.cpp...