Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Request for merge: GHC/ARM calling convention."
2011 Jul 01
1
[LLVMdev] Please review my patch to make GHC calling convention work on ARM
David,
Thanks for that - I emailed Karel Gardas. I've got GHC successfully
registerised on ARM, and I'm just starting on pushing it upstream.
The reason why I'm avoiding the R0-R3 registers is mainly because my
qemu-based ARM VM takes days to compile everything, and I was being
conservative. The GHC code can call directly out to C, so it would need
to save its own R0-R3 when it
2011 Jul 01
0
[LLVMdev] Please review my patch to make GHC calling convention work on ARM
Hi Steve,
I'm not an LLVM developer but am the author/maintainer of the LLVM
backend in GHC.
The patch looks mostly good to me (although I am not that familiar
with ARM so could easily have missed something). My main concern is
why are you avoiding using the R0 - R3 registers?
Also, could you please update me on the status of this work. I assume
you are getting GHC running in registerised
2011 Oct 14
2
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Duncan,
> const unsigned*
> ARMBaseRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF)
const {
> + bool ghcCall = false;
> +
> + if (MF) {
> + const Function *F = MF->getFunction();
> + ghcCall = (F ? F->getCallingConv() == CallingConv::GHC : false);
> + }
> This bit looks dubious. Why do you need to do it?
What exactly? We need
2011 Oct 14
3
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Duncan,
On 10/14/11 03:56 PM, Duncan Sands wrote:
> Hi Karel,
>
>> > const unsigned*
>> > ARMBaseRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF)
>> const {
>> > + bool ghcCall = false;
>> > +
>> > + if (MF) {
>> > + const Function *F = MF->getFunction();
>> > + ghcCall = (F ? F->getCallingConv() ==
2011 Oct 14
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Karel,
>>> > const unsigned*
>>> > ARMBaseRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF)
>>> const {
>>> > + bool ghcCall = false;
>>> > +
>>> > + if (MF) {
>>> > + const Function *F = MF->getFunction();
>>> > + ghcCall = (F ? F->getCallingConv() == CallingConv::GHC : false);
2011 Oct 14
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Karel,
> > const unsigned*
> > ARMBaseRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const {
> > + bool ghcCall = false;
> > +
> > + if (MF) {
> > + const Function *F = MF->getFunction();
> > + ghcCall = (F ? F->getCallingConv() == CallingConv::GHC : false);
> > + }
>
> > This bit looks dubious. Why do you
2010 Mar 07
1
[LLVMdev] [PATCH] New calling convention for use by GHC
OK, new patch attached. Hopefully in time for 2.7.
Chris Lattner wrote:
> 1) is the GHC calling conv intended to be target specific? If it is x86 specific, it should get an X86 prefix. If not, it should move up to be #10 after Cold.
No its intended to be supported on any platforms that GHC is supported
on, which is just x86 and SPARC at the moment. At the moment I've just
done X86, will
2010 Mar 03
0
[LLVMdev] [PATCH] New calling convention for use by GHC
On Mar 2, 2010, at 5:33 PM, David Terei wrote:
> Hi all,
>
> As previously mentioned on this list the Haskell compiler GHC has a new LLVM based back-end. The back-end needs a new calling convention to efficiently use LLVM and that is what this patch does, just for X86 at the moment.
Nice,
> The GHC developers would love to get this included in LLVM so that we don't need to
2010 Mar 03
2
[LLVMdev] [PATCH] New calling convention for use by GHC
Hi all,
As previously mentioned on this list the Haskell compiler GHC has a new
LLVM based back-end. The back-end needs a new calling convention to
efficiently use LLVM and that is what this patch does, just for X86 at
the moment.
Breakdown:
1) Need actual calling convention
Touches:
- include/llvm/CallingConv.h
- lib/Target/X86/X86CallingConv.td
2) Handling new calling
2011 Jul 01
2
[LLVMdev] Please review my patch to make GHC calling convention work on ARM
All,
I would like to submit the attached patch, which allows the GHC (Glasgow
Haskell Compiler) calling convention to work on ARM targets.
Could some nice person please review this code, so I can move towards
getting it committed?
I have thoroughly tested this patch again GHC on a Debian-ARM (armel)
system. Unfortunately my understanding of LLVM is limited, so it's
likely I'm not
2014 Jan 08
4
[LLVMdev] AArch64: GHC compilation issue.
Hi Tim,
On 01/ 8/14 10:24 PM, Tim Northover wrote:
> Hi Karel,
>
>> I've observed the same issue with LLVM 3.4 as distributed by Ubuntu 13.10
>> and with LLVM HEAD compiled on January 6. I'm able to provide the byte-code
>> file which results in this issue, but would first like to know if this is a
>> known issue in AArch64 target support or if I shall submit
2012 Jun 29
1
[LLVMdev] Request for merge: GHC/ARM calling convention.
On 06/29/12 11:12 PM, Renato Golin wrote:
> On 29 June 2012 17:46, Karel Gardas<karel.gardas at centrum.cz> wrote:
>> Yes and no. Shortly: original GHC/ARM/LLVM port was done by Stephen on
>> ARMv5/Qemu IIRC. I've later added whole VFP support and ARMv7 support. The
>> code in GHC is properly #ifdefed, so if there is no VFP available on pre
>> ARMv6, then
2011 Oct 14
2
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Duncan, Karel,
On 14 October 2011 08:22, Duncan Sands <baldrick at free.fr> wrote:
> Hi Karel,
>
>>>> > const unsigned*
>>>> > ARMBaseRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF)
>>>> const {
>>>> > + bool ghcCall = false;
>>>> > +
>>>> > + if (MF) {
>>>> > + const
2012 Jun 29
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
On 29 June 2012 17:46, Karel Gardas <karel.gardas at centrum.cz> wrote:
> Yes and no. Shortly: original GHC/ARM/LLVM port was done by Stephen on
> ARMv5/Qemu IIRC. I've later added whole VFP support and ARMv7 support. The
> code in GHC is properly #ifdefed, so if there is no VFP available on pre
> ARMv6, then it's not used. ie. GHC STG floating points regs are then
>
2012 Jun 29
2
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Renato,
On 06/25/12 12:13 AM, Renato Golin wrote:
> Hi Karel,
>
> I understand this patch has already been merged (to 3.0), so don't
> take my question as stopping the merge to head, I'm just making sure I
> got it right... The rest looks correct.
>
> + CCIfType<[v2f64], CCAssignToReg<[Q4, Q5]>>,
> + CCIfType<[f64], CCAssignToReg<[D8, D9,
2012 Aug 01
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
On Jun 24, 2012, at 7:18 AM, Karel Gardas <karel.gardas at centrum.cz> wrote:
>
> Hello,
>
> first of all: one of the LLVM 3.0 new feature was a support for GHC specific calling convention on ARM platform. It looks like this support was merged just into 3.0 branch, specifically it appeared in 3.0 RC2.
> Anyway, I hope this is just a mistake or omission that such support was
2011 Oct 18
2
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi David,
> Any word on this making 3.0?
3.0 already branched, and since this is not a regression, this will
most probably go into 3.1.
Maybe Bill (CC'ed) being the release manager has other opinion on this.
--
With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University
2011 Oct 18
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi Duncan,
Any word on this making 3.0?
Cheers,
David
On 16 October 2011 23:03, David Terei <davidterei at gmail.com> wrote:
> On 15 October 2011 00:31, Duncan Sands <baldrick at free.fr> wrote:
>> Hi David,
>>
>>> The code above is needed as the GHC calling convention redefines what
>>> registers are considered callee save. No one else rummages in
2011 Oct 15
0
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hi David,
> The code above is needed as the GHC calling convention redefines what
> registers are considered callee save. No one else rummages in to the
> original function as all the other calling conventions use the same
> set of callee and caller save registers, so GHC is the only one that
> needs to differentiate.
shouldn't the caller also know what registers are callee
2012 Jun 24
4
[LLVMdev] Request for merge: GHC/ARM calling convention.
Hello,
first of all: one of the LLVM 3.0 new feature was a support for GHC
specific calling convention on ARM platform. It looks like this support
was merged just into 3.0 branch, specifically it appeared in 3.0 RC2.
Anyway, I hope this is just a mistake or omission that such support was
merged only into 3.0 and not also into HEAD. I've just found it by
testing LLVM 3.1 with GHC 7.4.2 and