Displaying 3 results from an estimated 3 matches for "ebfffffe".
2012 Jul 06
3
[LLVMdev] Problem with __inline keyword
...following test program:
__inline int foo()
{
return 5;
}
int bar()
{
return foo();
}
Compiling for ARM with no optimizations yields this:
00000000 <bar>:
0: e92d4800 push {fp, lr}
4: e1a0b00d mov fp, sp
8: e24dd008 sub sp, sp, #8
c: ebfffffe bl 0 <foo>
10: e58d0004 str r0, [sp, #4]
14: e1a0d00b mov sp, fp
18: e8bd4800 pop {fp, lr}
1c: e12fff1e bx lr
As you can see, no inlining took place, so there is still a reference
to foo(). However, no definition for f...
2017 Dec 01
2
Some strange i64 behavior with arm 32bit. (Raspberry Pi)
Hi Tim,
thanks for the swift response!
@debug is defined in the same module, which makes this all the more confusing.
The target information from the working example are:
target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
target triple = "armv6kz--linux-gnueabihf"
from the ghc produced module:
target datalayout =
2017 Sep 05
4
Lowering llvm.memset for ARM target
As reported in an earlier thread
(http://clang-developers.42468.n3.nabble.com/Disable-memset-synthesis-tp4057810.html),
we noticed in some cases that the llvm.memset intrinsic, if lowered to
stores, could help with performance.
Here's a test case: If LIMIT is > 8, I see that a call to memset is
emitted for arm & aarch64, but not for x86 target.
typedef struct {
int v0[100];
}