- Feb 08, 2017
-
-
Peter Collingbourne authored
llvm-svn: 294516
-
Dylan McKay authored
llvm-svn: 294436
-
- Dec 02, 2016
-
-
Teresa Johnson authored
llvm-svn: 288500
-
- Nov 30, 2016
-
-
Quentin Colombet authored
llvm-svn: 288268
-
- Nov 12, 2016
-
-
Craig Topper authored
llvm-svn: 286710
-
- Nov 08, 2016
-
-
Michael Kuperstein authored
llvm-svn: 286269
-
- Nov 01, 2016
-
-
Alex Bradbury authored
This contains just enough for lib/Target/RISCV to compile. Notably a basic RISCVTargetMachine and RISCVTargetInfo. At this point you can attempt llc -march=riscv32 myinput.ll and will find it fails due to the lack of MCAsmInfo. See http://lists.llvm.org/pipermail/llvm-dev/2016-August/103748.html for further discussion Differential Revision: https://reviews.llvm.org/D23560 llvm-svn: 285712
-
- Sep 15, 2016
-
-
Peter Collingbourne authored
llvm-svn: 281628
-
- Sep 05, 2016
-
-
whitequark authored
llvm-svn: 280667
-
- Aug 02, 2016
-
-
Albert Gutowski authored
llvm-svn: 277503
-
- Jul 23, 2016
-
-
Simon Dardis authored
As agreed with Daniel Sanders, I'm taking over as code owner for the MIPS backend. llvm-svn: 276529
-
- Jul 21, 2016
-
-
Richard Osborne authored
llvm-svn: 276321
-
- Jul 05, 2016
-
-
Rafael Espindola authored
llvm-svn: 274574
-
- May 27, 2016
-
-
Hans Wennborg authored
llvm-svn: 270936
-
- May 26, 2016
-
-
Sanjoy Das authored
llvm-svn: 270915
-
- May 20, 2016
-
-
Justin Bogner authored
Owen no longer has time to tend to the yaks in SelectionDAG. llvm-svn: 270253
-
- May 10, 2016
-
-
Nadav Rotem authored
llvm-svn: 269073
-
- Apr 01, 2016
-
-
David Blaikie authored
llvm-svn: 265182
-
- Mar 28, 2016
-
-
Jacques Pienaar authored
Add the Lanai backend to lib/Target. General Lanai backend discussion on llvm-dev thread "[RFC] Lanai backend" (http://lists.llvm.org/pipermail/llvm-dev/2016-February/095118.html). Differential Revision: http://reviews.llvm.org/D17011 llvm-svn: 264578
-
- Mar 08, 2016
-
-
Hans Wennborg authored
Apparently this makes my email address easier to find. llvm-svn: 262951
-
- Jan 30, 2016
-
-
Alexey Samsonov authored
llvm-svn: 259280
-
- Dec 19, 2015
-
-
Paul Robinson authored
llvm-svn: 256106
-
- Dec 03, 2015
-
-
Krzysztof Parzyszek authored
llvm-svn: 254620
-
- Oct 28, 2015
-
-
Dylan McKay authored
Summary: As I maintain the AVR backend and am currently in the process of migrating it in tree, it makes sense to add myself as the code owner. Thoughts welcome! Differential Revision: http://reviews.llvm.org/D14002 llvm-svn: 251471
-
- Oct 27, 2015
-
-
Tim Northover authored
llvm-svn: 251367
-
- Sep 07, 2015
-
-
David Majnemer authored
llvm-svn: 246954
-
- Aug 13, 2015
-
-
David Majnemer authored
llvm-svn: 244823
-
- Jun 30, 2015
-
-
Dan Gohman authored
This WebAssembly backend is just a skeleton at this time and is not yet functional. llvm-svn: 241022
-
- May 05, 2015
-
-
Andrey Churbanov authored
llvm-svn: 236540
-
- Apr 21, 2015
-
-
David Majnemer authored
llvm-svn: 235360
-
- Mar 16, 2015
-
-
Joerg Sonnenberger authored
llvm-svn: 232395
-
- Mar 05, 2015
-
-
Quentin Colombet authored
llvm-svn: 231412
-
- Jan 28, 2015
-
-
Alex Rosenberg authored
llvm-svn: 227340
-
- Jan 24, 2015
-
-
Alexei Starovoitov authored
Summary: V8->V9: - cleanup tests V7->V8: - addressed feedback from David: - switched to range-based 'for' loops - fixed formatting of tests V6->V7: - rebased and adjusted AsmPrinter args - CamelCased .td, fixed formatting, cleaned up names, removed unused patterns - diffstat: 3 files changed, 203 insertions(+), 227 deletions(-) V5->V6: - addressed feedback from Chandler: - reinstated full verbose standard banner in all files - fixed variables that were not in CamelCase - fixed names of #ifdef in header files - removed redundant braces in if/else chains with single statements - fixed comments - removed trailing empty line - dropped debug annotations from tests - diffstat of these changes: 46 files changed, 456 insertions(+), 469 deletions(-) V4->V5: - fix setLoadExtAction() interface - clang-formated all where it made sense V3->V4: - added CODE_OWNERS entry for BPF backend V2->V3: - fix metadata in tests V1->V2: - addressed feedback from Tom and Matt - removed top level change to configure (now everything via 'experimental-backend') - reworked error reporting via DiagnosticInfo (similar to R600) - added few more tests - added cmake build - added Triple::bpf - tested on linux and darwin V1 cover letter: --------------------- recently linux gained "universal in-kernel virtual machine" which is called eBPF or extended BPF. The name comes from "Berkeley Packet Filter", since new instruction set is based on it. This patch adds a new backend that emits extended BPF instruction set. The concept and development are covered by the following articles: http://lwn.net/Articles/599755/ http://lwn.net/Articles/575531/ http://lwn.net/Articles/603983/ http://lwn.net/Articles/606089/ http://lwn.net/Articles/612878/ One of use cases: dtrace/systemtap alternative. bpf syscall manpage: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b4fc1a460f3017e958e6a8ea560ea0afd91bf6fe instruction set description and differences vs classic BPF: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/networking/filter.txt Short summary of instruction set: - 64-bit registers R0 - return value from in-kernel function, and exit value for BPF program R1 - R5 - arguments from BPF program to in-kernel function R6 - R9 - callee saved registers that in-kernel function will preserve R10 - read-only frame pointer to access stack - two-operand instructions like +, -, *, mov, load/store - implicit prologue/epilogue (invisible stack pointer) - no floating point, no simd Short history of extended BPF in kernel: interpreter in 3.15, x64 JIT in 3.16, arm64 JIT, verifier, bpf syscall in 3.18, more to come in the future. It's a very small and simple backend. There is no support for global variables, arbitrary function calls, floating point, varargs, exceptions, indirect jumps, arbitrary pointer arithmetic, alloca, etc. From C front-end point of view it's very restricted. It's done on purpose, since kernel rejects all programs that it cannot prove safe. It rejects programs with loops and with memory accesses via arbitrary pointers. When kernel accepts the program it is guaranteed that program will terminate and will not crash the kernel. This patch implements all 'must have' bits. There are several things on TODO list, so this is not the end of development. Most of the code is a boiler plate code, copy-pasted from other backends. Only odd things are lack or < and <= instructions, specialized load_byte intrinsics and 'compare and goto' as single instruction. Current instruction set is fixed, but more instructions can be added in the future. Signed-off-by:
Alexei Starovoitov <alexei.starovoitov@gmail.com> Subscribers: majnemer, chandlerc, echristo, joerg, pete, rengolin, kristof.beyls, arsenm, t.p.northover, tstellarAMD, aemerson, llvm-commits Differential Revision: http://reviews.llvm.org/D6494 llvm-svn: 227008
-
- Dec 18, 2014
-
-
Ulrich Weigand authored
As agreed with Richard Sandiford, I'm taking over code ownership for the SystemZ back end from him. llvm-svn: 224535
-
- Dec 12, 2014
-
-
Peter Collingbourne authored
llvm-svn: 224088
-
- Dec 11, 2014
-
-
Justin Bogner authored
I apparently fail at the alphabet, E is not after G, and G isn't even close to C. Sorry for the noise. llvm-svn: 223990
-
Justin Bogner authored
llvm-svn: 223989
-
Justin Bogner authored
llvm-svn: 223988
-
- Dec 08, 2014
-
-
Peter Collingbourne authored
llvm-svn: 223691
-