similar to: [LLVMdev] Using LLVM with clang for a homebrew kernel

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