Displaying 7 results from an estimated 7 matches for "mstrict".
Did you mean:
strict
2020 Jun 01
3
Aarch64: unaligned access despite -mstrict-align
...up with the following reproducer:
---8<-------8<-------8<-------8<-------8<-------8<-------8<-------
$ cat test.c
extern char *g;
int memcmp(const void *s1, const void *s2, unsigned long n);
int f(void *c)
{
return memcmp(g, c, 16);
}
$ clang --target=aarch64-linux-gnu -Os -mstrict-align -S test.c
$ cat test.s
.text
.file "test.c"
.globl f // -- Begin function f
.p2align 2
.type f, at function
f: // @f
// %bb.0:
adrp x8, g
ldr x10, [x8, :lo12:g]
ldr x9, [x0]
ldr x8, [x10]
rev x9, x9
rev x8, x8
cm...
2020 Jun 01
2
Aarch64: unaligned access despite -mstrict-align
...ts.llvm.org>
Sent: 01 June 2020 16:32
To: llvm-dev at lists.llvm.org <llvm-dev at lists.llvm.org>; Jerome Forissier <jerome at forissier.org>
Cc: op-tee at lists.trustedfirmware.org <op-tee at lists.trustedfirmware.org>
Subject: Re: [llvm-dev] Aarch64: unaligned access despite -mstrict-align
Hi Jerome,
> Note the 'ldr x9, [x0]'. At this point there is no guarantee that x0 is a multiple of 8, so why is Clang generating this code?
I think the point is that it can assume it is 8 byte aligned, so the question is why it isn't. I guess that requires looking into how...
2005 Jun 13
3
[LLVMdev] problem compiling the cfrontend on Linux/PPC
...IX_1="loser-" \
LANGUAGES="" \
LIBGCC2_CFLAGS="-O2 -DIN_GCC
-DDEFAULT_TARGET_MACHINE=\"powerpc-unknown-linux-gnu\" -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include
-fPIC -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fPIC -mstrict-align " \
MULTILIB_CFLAGS=" -fPIC -mstrict-align" T= ecrti.o
make[3]: Entering directory
`/usr/local/home/cyrille/project/llvm/cfrontend/build/gcc'
/usr/local/home/cyrille/project/llvm/cfrontend/build/gcc/xgcc
-B/usr/local/home/cyrille/project/llvm/cfrontend/build/gcc/
-B/usr/...
2005 Jun 13
0
[LLVMdev] problem compiling the cfrontend on Linux/PPC
...; LANGUAGES="" \
> LIBGCC2_CFLAGS="-O2 -DIN_GCC
> -DDEFAULT_TARGET_MACHINE=\"powerpc-unknown-linux-gnu\" -W -Wall
> -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem
> ./include -fPIC -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fPIC
> -mstrict-align " \
> MULTILIB_CFLAGS=" -fPIC -mstrict-align" T= ecrti.o
> make[3]: Entering directory
> `/usr/local/home/cyrille/project/llvm/cfrontend/build/gcc'
> /usr/local/home/cyrille/project/llvm/cfrontend/build/gcc/xgcc
> -B/usr/local/home/cyrille/project/llvm/cfro...
2011 Jan 05
1
[LLVMdev] Building LLVM-GCC on Linux/PowerPC failed
陳韋任 wrote:
> > Does your maching have directories like /lib64 and /usr/lib64?
> Yes, it has /lib64 and /usr/lib64.
>
> > what is the size of a void pointer?
> $ ./a.out
> sizeof (void*) : 8
>
> > Does this change if you add -m64 to the gcc command line?
> No.
Ok, as far as I cam tell, everything on your system is
correct.
I don't have any further ideas
2015 Apr 20
2
[LLVMdev] question about alignment of structures on the stack (arm 32)
Dear community,
I faced with code which was generated by llvm, assembly instructions of that code is relying on 8-bytes alignment for structures on the stack.
The part of Objective C code is following:
-(void)getCharacters:(unichar *)unicode {
NSRange range;
range.location = 0;
range.length = [self length];
printf("%p, %p\n", &range.location, &range.length);
And
2015 Apr 21
2
[LLVMdev] question about alignment of structures on the stack (arm 32)
...and mac.
Another way, I think, it's make realignment inside all of ELF function, here could be a performance penalty, I tried -mstackrealign, but it wasn't lead to 8-bytes aligned stack, I mean sp wasn't aligned to 0x.....0/8,
as well as address of structure on the stack. Also I tried -mstrict-align.
So I assume, somewhere should be patches for llvm, which could do it )
I not yet tested some __attribute__((pcs("aapcs")))/-target-abi, maybe there is magic pcs attribute, and I could apply it for dangerous function, but I would prefer to solve that problem in general.
>
>...