steven.known via llvm-dev
2019-Jun-09 07:41 UTC
[llvm-dev] Major release of xocc C compiler, 0.9.2, based on BSD license!
Hello everybody, I'm glad to announce the major release of xocc C compiler, 0.9.2, based on BSD license. xocc is a C compiler that based on XOC infrastructure, XGEN code generator and XOCFE C frontend. Both xocc, XOC, XGEN, and XOCFE are based on BSD license. XOC provides multi-level operations, flexibility, and the capability of representing almost all popular languages. There are mainly two level IR representations used throughout all phases of the compilation. In addition to basic IR representation, XOC also provides IR builder, BB manipulating api, Control Flow Graph(CFG), IR lowering, Control Dependent Graph, Dominator Tree, Register SSA, Memory SSA, Agressive Flow Sensitive Alias Analysis, Flow Insensitive Alias Analysis, Agressive Field Sensitive Alias Analysis, Interprocedual Analysis Framework, Inliner, Dead Code Elimination, Copy Propagation, GCSE, GVN, and a lot of sophisticated control flow and peephole optimizations. Moveover, XOC does not use any std library, it provides all basic algorithm library such Vector, List, Map, Dense Bitset, Sparse Bitset, Graph, Mempool, Big-Integer, Linear Algebraic library, Linear Programming Solver. XGEN provides a retargetable machine code generator. For now, it could generate ARM, x86, PAC code. But, x86 and PAC code generator are not release for temporary. XGEN provides IR2OR translator, Pre-Instruction-Schedular, Register Allocation, Post-Instruction-Schedular, Instruction Packager and Assembly Printer. XOCFE is a C frontend, it could provide AST as output. xocc is a driver that compose XOCFE, AST2IR, XOC and XGEN into complete C compiler. All features provided by xocc, XOC, XGEN, XOCFE could empower you to develop any compiler and analysis tools. More important is, any feedback on the compiler and its components would be much appreciated! For more details, see: https://github.com/stevenknown/xgen https://github.com/stevenknown/xoc https://github.com/stevenknown/xocfe https://github.com/stevenknown/xpoly -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190609/94003eb2/attachment.html>
Michael Kruse via llvm-dev
2019-Jun-10 16:04 UTC
[llvm-dev] Major release of xocc C compiler, 0.9.2, based on BSD license!
Thank you for sharing! Regarding xpoly, what kind of analysis/transformation is it capable of? I could not find an omega-test and mostly unimodular transformations. Michael Am So., 9. Juni 2019 um 13:54 Uhr schrieb steven.known via llvm-dev <llvm-dev at lists.llvm.org>:> > Hello everybody, > > I'm glad to announce the major release of xocc C compiler, 0.9.2, based on BSD license. > xocc is a C compiler that based on XOC infrastructure, XGEN code generator and XOCFE > C frontend. > Both xocc, XOC, XGEN, and XOCFE are based on BSD license. > > XOC provides multi-level operations, flexibility, and the capability of representing almost all popular languages. > There are mainly two level IR representations used throughout all phases of the compilation. > In addition to basic IR representation, XOC also provides IR builder, BB manipulating api, Control Flow Graph(CFG), > IR lowering, Control Dependent Graph, Dominator Tree, Register SSA, Memory SSA, Agressive Flow Sensitive Alias Analysis, > Flow Insensitive Alias Analysis, Agressive Field Sensitive Alias Analysis, Interprocedual Analysis Framework, Inliner, > Dead Code Elimination, Copy Propagation, GCSE, GVN, and a lot of sophisticated control flow and peephole optimizations. > Moveover, XOC does not use any std library, it provides all basic algorithm library such Vector, List, Map, Dense Bitset, > Sparse Bitset, Graph, Mempool, Big-Integer, Linear Algebraic library, Linear Programming Solver. > > XGEN provides a retargetable machine code generator. > For now, it could generate ARM, x86, PAC code. But, x86 and PAC code generator are not release for temporary. > XGEN provides IR2OR translator, Pre-Instruction-Schedular, Register Allocation, Post-Instruction-Schedular, > Instruction Packager and Assembly Printer. > > XOCFE is a C frontend, it could provide AST as output. > > xocc is a driver that compose XOCFE, AST2IR, XOC and XGEN into complete C compiler. > > All features provided by xocc, XOC, XGEN, XOCFE could empower you to develop any compiler and analysis tools. > > More important is, any feedback on the compiler and its components would be much appreciated! > > For more details, see: > https://github.com/stevenknown/xgen > https://github.com/stevenknown/xoc > https://github.com/stevenknown/xocfe > https://github.com/stevenknown/xpoly > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
steven.known via llvm-dev
2019-Jun-12 08:36 UTC
[llvm-dev] 回复: Major release of xocc C compiler, 0.9.2, based on BSD license!
Hi Michael Kruse, unimodular and non-singular trans, polyhedral trans, dependence and legality of transformations check are enabled, please look up poly.h and ldtran.h for more details. :) However, convet AST/IR to poly-representation and extract dependence-vector are still not provided yet. ------------------------------------------------------------------ 发件人:Michael Kruse <llvmdev at meinersbur.de> 发送时间:2019年6月11日(星期二) 00:04 收件人:steven.known <steven.known at aliyun.com> 抄 送:llvm-dev <llvm-dev at lists.llvm.org> 主 题:Re: [llvm-dev] Major release of xocc C compiler, 0.9.2, based on BSD license! Thank you for sharing! Regarding xpoly, what kind of analysis/transformation is it capable of? I could not find an omega-test and mostly unimodular transformations. Michael Am So., 9. Juni 2019 um 13:54 Uhr schrieb steven.known via llvm-dev <llvm-dev at lists.llvm.org>:> > Hello everybody, > > I'm glad to announce the major release of xocc C compiler, 0.9.2, based on BSD license. > xocc is a C compiler that based on XOC infrastructure, XGEN code generator and XOCFE > C frontend. > Both xocc, XOC, XGEN, and XOCFE are based on BSD license. > > XOC provides multi-level operations, flexibility, and the capability of representing almost all popular languages. > There are mainly two level IR representations used throughout all phases of the compilation. > In addition to basic IR representation, XOC also provides IR builder, BB manipulating api, Control Flow Graph(CFG), > IR lowering, Control Dependent Graph, Dominator Tree, Register SSA, Memory SSA, Agressive Flow Sensitive Alias Analysis, > Flow Insensitive Alias Analysis, Agressive Field Sensitive Alias Analysis, Interprocedual Analysis Framework, Inliner, > Dead Code Elimination, Copy Propagation, GCSE, GVN, and a lot of sophisticated control flow and peephole optimizations. > Moveover, XOC does not use any std library, it provides all basic algorithm library such Vector, List, Map, Dense Bitset, > Sparse Bitset, Graph, Mempool, Big-Integer, Linear Algebraic library, Linear Programming Solver. > > XGEN provides a retargetable machine code generator. > For now, it could generate ARM, x86, PAC code. But, x86 and PAC code generator are not release for temporary. > XGEN provides IR2OR translator, Pre-Instruction-Schedular, Register Allocation, Post-Instruction-Schedular, > Instruction Packager and Assembly Printer. > > XOCFE is a C frontend, it could provide AST as output. > > xocc is a driver that compose XOCFE, AST2IR, XOC and XGEN into complete C compiler. > > All features provided by xocc, XOC, XGEN, XOCFE could empower you to develop any compiler and analysis tools. > > More important is, any feedback on the compiler and its components would be much appreciated! > > For more details, see: > https://github.com/stevenknown/xgen > https://github.com/stevenknown/xoc > https://github.com/stevenknown/xocfe > https://github.com/stevenknown/xpoly > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190612/be75e503/attachment.html>