<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in cmp.ll</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>d3b522f5 - bpf: fix incorrect SELECT_CC lowering</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll#d3b522f5</link>
        <description>bpf: fix incorrect SELECT_CC loweringCommit 37962a331c77 (&quot;bpf: Improve expanding logic in LowerSELECT_CC&quot;)intended to improve code quality for certain jmp conditions. Thecommit, however, has a couple of issues:  (1). In code, just swap is not enough, ConditionalCode CC       should also be swapped, otherwise incorrect code will       be generated.  (2). The ConditionalCode swap should be subject to       getHasJmpExt(). If getHasJmpExt() is False, certain       conditional codes will not be supported and swap       may generate incorrect code.The original goal for this patch is to optimize jmp operationswhich does not have JmpExt turned on. If JmpExt is on,better code could be generated. For example, the testselect_ri.ll is introduced to demonstrate the optimization.The same result can be achieved with -mcpu=v2 flag.Signed-off-by: Yonghong Song &lt;yhs@fb.com&gt;Acked-by: Alexei Starovoitov &lt;ast@kernel.org&gt;llvm-svn: 329043

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll</description>
        <pubDate>Tue, 03 Apr 2018 03:56:37 +0000</pubDate>
        <dc:creator>Yonghong Song &lt;yhs@fb.com&gt;</dc:creator>
    </item>
<item>
        <title>891789c2 - [BPF]  Return true in enableMultipleCopyHints().</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll#891789c2</link>
        <description>[BPF]  Return true in enableMultipleCopyHints().Enable multiple COPY hints to eliminate more COPYs during register allocation.Note that this is something all targets should do, seehttps://reviews.llvm.org/D38128.Review: Yonghong Songllvm-svn: 325457

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll</description>
        <pubDate>Sun, 18 Feb 2018 10:09:54 +0000</pubDate>
        <dc:creator>Jonas Paulsson &lt;paulsson@linux.vnet.ibm.com&gt;</dc:creator>
    </item>
<item>
        <title>f2075aef - bpf: Improve expanding logic in LowerSELECT_CC</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll#f2075aef</link>
        <description>bpf: Improve expanding logic in LowerSELECT_CCLowerSELECT_CC is not generating optimal Select_Ri pattern at the moment. Itis not guaranteed to place ConstantNode at RHS which would miss matchingSelect_Ri.A new testcase added into the existing select_ri.ll, also there is anexisting case in cmp.ll which would be improved to use Select_Ri after thispatch, it is adjusted accordingly.Reported-by: Alexei Starovoitov &lt;alexei.starovoitov@gmail.com&gt;Reviewed-by: Yonghong Song &lt;yhs@fb.com&gt;Signed-off-by: Jiong Wang &lt;jiong.wang@netronome.com&gt;llvm-svn: 324560

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll</description>
        <pubDate>Thu, 08 Feb 2018 04:37:49 +0000</pubDate>
        <dc:creator>Yonghong Song &lt;yhs@fb.com&gt;</dc:creator>
    </item>
<item>
        <title>8f9f8210 - convert bpf assembler to look like kernel verifier output</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll#8f9f8210</link>
        <description>convert bpf assembler to look like kernel verifier outputsince bpf instruction set was introduced people learned toread and understand kernel verifier output whereas llvm asmoutput stayed obscure and unknown. Convert llvm to emitassembler text similar to kernel to avoid this discrepancySigned-off-by: Alexei Starovoitov &lt;ast@kernel.org&gt;llvm-svn: 287300

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll</description>
        <pubDate>Fri, 18 Nov 2016 02:32:35 +0000</pubDate>
        <dc:creator>Alexei Starovoitov &lt;alexei.starovoitov@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>e4c8c807 - BPF backend</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll#e4c8c807</link>
        <description>BPF backendSummary:V8-&gt;V9:- cleanup testsV7-&gt;V8:- addressed feedback from David:- switched to range-based &apos;for&apos; loops- fixed formatting of testsV6-&gt;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-&gt;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-&gt;V5:- fix setLoadExtAction() interface- clang-formated all where it made senseV3-&gt;V4:- added CODE_OWNERS entry for BPF backendV2-&gt;V3:- fix metadata in testsV1-&gt;V2:- addressed feedback from Tom and Matt- removed top level change to configure (now everything via &apos;experimental-backend&apos;)- reworked error reporting via DiagnosticInfo (similar to R600)- added few more tests- added cmake build- added Triple::bpf- tested on linux and darwinV1 cover letter:---------------------recently linux gained &quot;universal in-kernel virtual machine&quot; which is calledeBPF or extended BPF. The name comes from &quot;Berkeley Packet Filter&quot;, sincenew 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=b4fc1a460f3017e958e6a8ea560ea0afd91bf6feinstruction set description and differences vs classic BPF:http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/networking/filter.txtShort 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 simdShort 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&apos;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&apos;s very restricted. It&apos;s done on purpose, since kernelrejects all programs that it cannot prove safe. It rejects programs with loopsand with memory accesses via arbitrary pointers. When kernel accepts the program it isguaranteed that program will terminate and will not crash the kernel.This patch implements all &apos;must have&apos; 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 &lt; and &lt;= instructions, specialized load_byte intrinsicsand &apos;compare and goto&apos; as single instruction.Current instruction set is fixed, but more instructions can be added in the future.Signed-off-by: Alexei Starovoitov &lt;alexei.starovoitov@gmail.com&gt;Subscribers: majnemer, chandlerc, echristo, joerg, pete, rengolin, kristof.beyls, arsenm, t.p.northover, tstellarAMD, aemerson, llvm-commitsDifferential Revision: http://reviews.llvm.org/D6494llvm-svn: 227008

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/BPF/cmp.ll</description>
        <pubDate>Sat, 24 Jan 2015 17:51:26 +0000</pubDate>
        <dc:creator>Alexei Starovoitov &lt;alexei.starovoitov@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
