Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] arm compiler benchmarks"
2013 Feb 27
2
[LLVMdev] arm compiler benchmarks
What about benchmarks on other Arm devices?
On 02/26/2013 02:52 PM, Jim Grosbach wrote:
> Cortex-M0 is a Thumb1 only device. There hasn't been any concerted
> effort to tune LLVM's Thumb1 output in quite a long time. Even back then
> (2008 or so), the effort was mainly to get it to work acceptably, with
> the real performance tuning work being done for Thumb2. I'm not
>
2013 Feb 26
0
[LLVMdev] arm compiler benchmarks
Cortex-M0 is a Thumb1 only device. There hasn't been any concerted effort to tune LLVM's Thumb1 output in quite a long time. Even back then (2008 or so), the effort was mainly to get it to work acceptably, with the real performance tuning work being done for Thumb2. I'm not surprised that an embedded market focussed compiler like IAR is better tuned for a chip like that.
-Jim
On Feb
2013 Feb 27
0
[LLVMdev] arm compiler benchmarks
I've not run any on non-iOS devices, and haven't looked at GCC since v4.2.1 due to licensing issues, so I don't have a good feel for comparative benchmarking.
-Jim
On Feb 26, 2013, at 4:20 PM, Reed Kotler <rkotler at mips.com> wrote:
> What about benchmarks on other Arm devices?
>
> On 02/26/2013 02:52 PM, Jim Grosbach wrote:
>> Cortex-M0 is a Thumb1 only
2013 Feb 02
2
[LLVMdev] logic function optimization: IAR 1 - LLVM 0 ?
I gave the following function to IAR compiler (targeting CortexM0)
and to clang/LLVM 3.2 (clang -O3 -target thumbv6-eabi -emit-llvm)
int
calleeSave8(int in[]){
int out=0;
int i;
for(i=0;i<8;i++){
out ^=
in[i] & in[(i+1)%8];
}//expand to out =
(in[0]&in[1])^(in[1]&in[2])^(in[2]&in[3])^(in[3]&in[4])^(in[4]&in[5])^(in[5]&in[6])^(in[6]&in[7])^(in[7]&in[0])
2013 Feb 05
1
[LLVMdev] logic function optimization: IAR 1 - LLVM 0 ?
Hi,
clang -O3 -target thumbv7-eabi -emit-llvm ...
llc ... -debug
-O3 -code-model=small -march=thumb -mcpu=cortex-m3 ...
Does generate
slightly better code, but it still computes 7 xor + 7 and.
Anyway this
should be a target independent optimization isn't it ??
Cheers
Sebastien
On 2013-02-04 16:46, Bill Wendling wrote:
> Have you tried
armv7?
>
> -bw
>
> On Feb 2,
2013 Feb 04
0
[LLVMdev] logic function optimization: IAR 1 - LLVM 0 ?
Have you tried armv7?
-bw
On Feb 2, 2013, at 3:50 PM, matic at nimp.co.uk wrote:
> I gave the following function to IAR compiler (targeting CortexM0) and to clang/LLVM 3.2 (clang -O3 -target thumbv6-eabi -emit-llvm)
>
> int calleeSave8(int in[]){
> int out=0;
> int i;
> for(i=0;i<8;i++){
> out ^= in[i] & in[(i+1)%8];
> }//expand to out =
2013 Feb 27
2
[LLVMdev] arm compiler benchmarks
I haven't tried using -Os/z on any ARM device for the last 3 years, and
back then, -Os would break many things.
People normally care about code size on Cortex-R/M and ARM9 or older, and
in there, not many LLVM users.
--renato
On 27 February 2013 00:38, Jim Grosbach <grosbach at apple.com> wrote:
> I've not run any on non-iOS devices, and haven't looked at GCC since
>
2014 Jan 21
2
[LLVMdev] How to force a MachineFunctionPass to be the last one ?
Hi,
I would like to execute a MachineFunctionPass after all other passes
which modify the machine code.
In other words, if we call llc to generate assembly file, that pass
should run right before the "Assembly Printer" pass.
Is there any official way to enforce this ?
Best regards,
Sebastien
2012 Jul 31
2
[LLVMdev] Benchmarks for small embedded platforms
Hi Everyone,
As you may recall (I posted a while back) I'm currently doing a project
measuring the energy consumption for different compiler flags. I've now
gathered a set of benchmarks which I think are appropriate, for these
(very) low end embedded platforms.
The benchmarks that have been chosen:
- CRC32, SHA
- Prime sifting
- Integer / floating point matrix multiplication
- Cubic
2010 Mar 03
2
Speex on EFM32
In fact, on my shelf is running speex using Raisonance Primer2 DK and IAR
STM32-SK DK.
But I want to save the power consumption of the device runnig speex, and
EFM32 seems to be a very good candidate.
Also, do yo think that the STM32F103 (Cortex M3 90 MIPS) could be used to
run Speex at 4 Kbps in real time?
Regards,
Nicolas
2010/3/3 Jean-Marc Valin <jean-marc.valin at usherbrooke.ca>
>
2024 May 26
1
opus library
Hello,
I am interested in implementing opus decoder in my project.
My OS: FreeRTOS
MCU: NXP IMXRT1060
IAR 8.32
I integrated the library opus and successfully compiled (at least didn?t receive compile warning or errors).
What a right way to take opus file and decode to wav file?
I see, there a few examples, but I don?t know what example will be suitable for me?
Pls advise,
Kind Regards,
2012 Jul 31
0
[LLVMdev] Benchmarks for small embedded platforms
On Jul 31, 2012, at 4:43 AM, James Pallister <james.pallister at embecosm.com> wrote:
> Hi Everyone,
>
> As you may recall (I posted a while back) I'm currently doing a project
> measuring the energy consumption for different compiler flags. I've now
> gathered a set of benchmarks which I think are appropriate, for these
> (very) low end embedded platforms.
>
2010 Mar 06
2
[LLVMdev] expression statements, volatiles, and C vs. C++
The question is, what should C and C++ compilers do with this code?
volatile int x;
void foo (void) {
x;
}
This question is not totally stupid: embedded systems use code like this
when reading a hardware register has a useful side effect (usually
clearing the register).
It is reasonably clear that a C compiler should load from x and throw
away the value. clang and llvm-gcc do
2002 Nov 28
1
Problem authenticating against a W2K server
Hi there.
I'm having a problem letting a Samba server (MYSAMBA) authenticate users
(using "security = domain" and a "password server = MYPDC") against a
Windows 2000 PDC (MYPDC). The Windows 2000 machine seems (I'm not 100%
sure about this) to be configured to restrict anonymous and it seems to
me that this is where the problem lies but don't know what to do.
I
2013 Jan 27
1
[LLVMdev] Clarification about callee saved regs and MachineRegisterInfo::isPhyRegUsed
Hi,
I am confused about the call to isPhyRegUsed in
calculateCalleeSavedRegisters:
if (Fn.getRegInfo().isPhysRegUsed(Reg))
{
// If the reg is modified, save it!
CSI.push_back(CalleeSavedInfo(Reg));
}
It seems that isPhyRegUsed
returns true if the register is read or written in the function.
If
this is right, why do we save a register if it is only read in the
function ?? I would have
2010 Oct 29
0
Install IAR compiler on Fedora 8 using wine 1.2
Hai,
This is amar. I have a situation like installing IAR compiler on Fedora 8 so i installed compiler with the help of wine 1.2. It successfully installed :) but i got a problem during build the programs it is asking the Dongle key(USB) Drivers.This Dongle key is Licensed key provided by IAR vendor. These Drivers are not installed during Installation process.
so I add USB patch to wine1.2
2010 Mar 03
1
Speex on EFM32
Thanks !
On this forum is also shown this information :
http://lists.xiph.org/pipermail/speex-dev/2009-January/007050.html
According to vk's results, it could be possible to run Speex at 4/6 & 8 kbps
on a Cortex M-3 at 36 MHz ... so not excluding the EFM32 ...
Nico
2010/3/3 Pietro Maggi <studiomaggi at gmail.com>
> On ST forums there is someone that states it has done an
2019 May 28
2
Instruction is selected, but it shouldn't (?)
Hi Eli,
Thanks for your response. Actually, I look a lot at the ARM and THUMB1 backend implementations, and this certainly help. My architecture also have specific instructions for SP-relative accesses in a similar way than the Thumb1.
During frame lowering, specific machine instructions are emitted so there’s no issue there. Also during ISelDagToDag I am able to select the right instructions.
2019 May 28
2
Instruction is selected, but it shouldn't (?)
In MyTargetRegisterInfo.td file, I defined separated register classes for general purpose registers and for the SP register:
def GR16 : RegisterClass<"CPU74", [i16], 16, (add R0, R1, R2, R3, R4, R5, R6, R7)>;
def SSP : RegisterClass<"CPU74", [i16], 16, (add SP)>;
The SP can not be used in general purpose arithmetic instructions, therefore I defined the following
2014 Dec 15
3
[LLVMdev] Newbee question: LLVM backend regression tests for thumb1 targets on simulator possible?
Hello,
as a newbee, I'd appreciate some support on regression test setup.
Specifically, I am interrested in the feature of tail call optimizations for
the ARM v6m targets. This feature currently seems to be completely
deactivated at the moment (v6m being based on thumb1 ?!). According to my
code-reading, this feature will involve some modifications in epilogue
generation.
My work on a gcc