Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Using LLVM with clang for a homebrew kernel"
2010 Apr 08
0
[LLVMdev] Using LLVM with clang for a homebrew kernel
On Apr 7, 2010, at 5:07 PM, Andreas Galauner wrote:
>
> shouldn't be necessary with llvm since I can just translate the bitcode
> to any native architecture
http://llvm.org/docs/FAQ.html#platformindependent
Dan
2019 Apr 26
2
[RFC][clang/llvm] Allow efficient implementation of libc's memory functions in C/C++
*TL;DR:*
Defining memory functions in C / C++ results in a chicken and egg problem.
Clang can mutate the code into semantically equivalent calls to libc. None
of `-fno-builtin-memcpy`, `-ffreestanding` nor `-nostdlib` provide a
satisfactory answer to the problem.
*Goal*
Create libc's memory functions (aka `memcpy`, `memset`, `memcmp`, ...) in
C++ to benefit from compiler's knowledge and
2012 Oct 27
2
[LLVMdev] [llvm-commits] [llvm] r166875 - in /llvm/trunk: lib/Transforms/Scalar/LoopIdiomRecognize.cpp test/Transforms/LoopIdiom/basic.ll
On 27.10.2012, at 18:24, Benjamin Kramer <benny.kra at gmail.com> wrote:
>
> On 27.10.2012, at 18:15, Sean Silva <silvas at purdue.edu> wrote:
>
>> How does this affect freestanding implementations?
>
> This transform is disabled with -fno-builtin or -ffreestanding.
Thinking a bit more about this, it looks like the way -ffreestanding is implemented in clang is
2016 Sep 21
2
RFC: module flag for hosted mode
(summarising IRC)
Rethinking a little, I would be inclined to agree that combined hosted and
freestanding modules should not be compiled in hosted mode. Here's one
scenario where we may break: suppose I LTO-link an implementation of memset
compiled with -ffreestanding with a program compiled with -fhosted. With
the proposed rule, the loop idiom recognizer may transform the body of the
memset
2016 Sep 16
2
RFC: module flag for hosted mode
+Eric and Akira (for thoughts on module flags)
> On 2016-Sep-16, at 12:47, Mehdi Amini <mehdi.amini at apple.com> wrote:
>
>> On Sep 16, 2016, at 12:30 PM, Peter Collingbourne <peter at pcc.me.uk> wrote:
>>
>> In PR30403 we've been discussing how to encode -ffreestanding when using LTO. This bit is currently dropped during LTO because its only
2016 Sep 16
2
RFC: module flag for hosted mode
In PR30403 we've been discussing how to encode -ffreestanding when using
LTO. This bit is currently dropped during LTO because its only
representation is in the TargetLibraryInfo created by clang (
http://llvm-cs.pcc.me.uk/tools/clang/lib/CodeGen/BackendUtil.cpp#258).
The proposal is to introduce a module flag that we set in any translation
unit compiled in hosted (i.e. -fno-freestanding)
2020 Jul 26
0
[kvm-unit-tests PATCH v3 0/4] Update patch set
On Sat, Jul 25, 2020 at 4:10 PM Ben Hutchings <ben at decadent.org.uk> wrote:
> On Sat, 2020-07-25 at 15:16 -0700, Bill Wendling wrote:
> > On Sat, Jul 25, 2020 at 2:56 PM Ben Hutchings <ben at decadent.org.uk> wrote:
> > > On Sat, 2020-07-25 at 14:36 -0700, Bill Wendling wrote:
> > > [...]
> > > > I upstreamed a few patches to klibc to fix a few
2012 May 29
0
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 10:28 AM, Dmitry Vyukov <dvyukov at google.com> wrote:
> On Tue, May 29, 2012 at 9:16 PM, Chandler Carruth <chandlerc at google.com>wrote:
>
>> > How do I disable that feature? I've tried -fno-builtin and/or
>>>> -ffreestanding
>>>> > with no success.
>>>> clang (as well as gcc) requires that
2018 Jun 06
0
[PATCH] kbuild: add -ffreestanding to required flags
Bill Wendling dixit:
>New clang versions need the '-ffreestanding' flag because new changes
>convert system calls to their unlocked versions, which don't exist in
>the kernel library.
This is probably wrong, a libc is not, in contrast to a bootloader
or kernel, a freestanding environment.
For the case of GCC, -ffreestanding is definitely wrong.
Please look for another
2012 May 29
0
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 10:46 AM, Dmitry Vyukov <dvyukov at google.com> wrote:
> On Tue, May 29, 2012 at 9:40 PM, Chandler Carruth <chandlerc at google.com>wrote:
>
>> > How do I disable that feature? I've tried -fno-builtin and/or
>>>>>> -ffreestanding
>>>>>> > with no success.
>>>>>> clang (as well as gcc)
2012 May 29
3
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 9:40 PM, Chandler Carruth <chandlerc at google.com>wrote:
> > How do I disable that feature? I've tried -fno-builtin and/or
>>>>> -ffreestanding
>>>>> > with no success.
>>>>> clang (as well as gcc) requires that freestanding environment provides
>>>>> memcpy, memmove, memset and memcmp.
2012 May 29
0
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 11:11 AM, Jeffrey Yasskin <jyasskin at googlers.com>wrote:
> On Tue, May 29, 2012 at 10:50 AM, Chandler Carruth <chandlerc at google.com>
> wrote:
> > On Tue, May 29, 2012 at 10:46 AM, Dmitry Vyukov <dvyukov at google.com>
> wrote:
> >>
> >> On Tue, May 29, 2012 at 9:40 PM, Chandler Carruth <chandlerc at google.com
>
2012 May 29
1
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 9:50 PM, Chandler Carruth <chandlerc at google.com>wrote:
> > How do I disable that feature? I've tried -fno-builtin and/or
>>>>>>> -ffreestanding
>>>>>>> > with no success.
>>>>>>> clang (as well as gcc) requires that freestanding environment
>>>>>>> provides
2012 May 29
3
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 8:46 PM, Anton Korobeynikov <anton at korobeynikov.info
> wrote:
> > How do I disable that feature? I've tried -fno-builtin and/or
> -ffreestanding
> > with no success.
> clang (as well as gcc) requires that freestanding environment provides
> memcpy, memmove, memset and memcmp.
>
> PS: Consider emailing cfedev, not llvmdev.
>
Hi,
2012 May 29
3
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 10:50 AM, Chandler Carruth <chandlerc at google.com> wrote:
> On Tue, May 29, 2012 at 10:46 AM, Dmitry Vyukov <dvyukov at google.com> wrote:
>>
>> On Tue, May 29, 2012 at 9:40 PM, Chandler Carruth <chandlerc at google.com>
>> wrote:
>>>>>>>
>>>>>>> > How do I disable that feature? I've
2012 May 29
2
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 9:16 PM, Chandler Carruth <chandlerc at google.com>wrote:
> > How do I disable that feature? I've tried -fno-builtin and/or
>>> -ffreestanding
>>> > with no success.
>>> clang (as well as gcc) requires that freestanding environment provides
>>> memcpy, memmove, memset and memcmp.
>>>
>>> PS: Consider
2012 May 29
0
[LLVMdev] How to prevent insertion of memcpy()
> How do I disable that feature? I've tried -fno-builtin and/or -ffreestanding
> with no success.
clang (as well as gcc) requires that freestanding environment provides
memcpy, memmove, memset and memcmp.
PS: Consider emailing cfedev, not llvmdev.
--
With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University
2012 May 29
0
[LLVMdev] How to prevent insertion of memcpy()
On Tue, May 29, 2012 at 9:52 AM, Dmitry Vyukov <dvyukov at google.com> wrote:
> On Tue, May 29, 2012 at 8:46 PM, Anton Korobeynikov <
> anton at korobeynikov.info> wrote:
>
>> > How do I disable that feature? I've tried -fno-builtin and/or
>> -ffreestanding
>> > with no success.
>> clang (as well as gcc) requires that freestanding environment
2008 May 14
0
[LLVMdev] malloc, magic, and embedded compilation
> 1. The particular optimization that was done there was based on the
> compiler substituting an alternate implementation of malloc(). This may
> not be appropriate in kernel or deeply embedded systems. Is there a way
> for someone who is building that sort of system to enable/disable the
> builtin library magic selectively?
-ffreestanding
> I assume that LLVM can support
2018 Jun 06
2
[PATCH] kbuild: add -ffreestanding to required flags
New clang versions need the '-ffreestanding' flag because new changes
convert
system calls to their unlocked versions, which don't exist in the kernel
library.
Signed-off-by: Bill Wendling <morbo at google.com>
diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc
index f500d535..9cf4b2d9 100644
--- a/scripts/Kbuild.klibc
+++ b/scripts/Kbuild.klibc
@@ -67,7 +67,8 @@ include