蚂蚁金服(阿里巴巴)开源 LLVM 的 JVM 编译器,与阿里散军C++开发的 JVM — YVM
Jeandle是一款基于OpenJDK和LLVM的Java即时编译器,旨在通过LLVM基础架构实现强大的编译优化,生成高性能机器码。该项目由阿里集团开发,作为国内创新项目,将LLVM的性能优势引入JVM生态。阿里巴巴还贡献了DragonWell JDK,进一步增强了Java底层能力。Jeandle包含两个GitHub仓库:jeandle-jdk负责LLVM相关部分,jeandle-llvm提供编译
关于 LLVM 的介绍 LLVM 介绍 -CSDN博客
Jeandle is a Just-in-Time compiler for Java. It is built on OpenJDK and leverages the LLVM compiler infrastructure to generate machine code, aiming to provide powerful compilation optimizations and deliver high-performance code.
https://github.com/jeandle/jeandle-jdk
This repository is responsible for the LLVM-related parts of Jeandle.
https://github.com/jeandle/jeandle-llvm

Jeandle 是基于 OpenJDK Hotspot JVM 的全新 Just-In-Time(简称 JIT,即时)编译器,利用 LLVM 进行编译优化与代码生成,将 LLVM 的性能优势和生态优势引入 JVM 中。
Jeandle 中文: 筋斗云 。
为国内的「新创」项目,阿里集团对 Java 的底层能力贡献又多了一个「干将」。
阿里巴巴贡献了 JDK
Dragon Well
Dragonwell
https://dragonwell-jdk.io/#/index
YVM
qingfeng.yy@alibaba-inc.com 在 GitHub 是这个阿里巴巴邮箱。
https://github.com/y1yang0/yvm
This is a toy Java virtual machine(JVM) that supports many of Java's language features, it also comes with an experimental mark-sweep garbage collector. The implementation of this JVM follows the Java Virtual Machine Specification 8. I don't have enough time to write unit tests for each component, and I don't implement the full Java language features, but as far as pleasing myself, I think it's enough. If you find any bugs, or you want to implement any missing features, you can create an issue or pull request, respectively.
root@ubuntu:~/yvm/src$ tree .
.
├── classfile
│ ├── AccessFlag.h # Access flag of class, method, field
│ ├── ClassFile.h # Parse .class file
│ └── FileReader.h # Read .class file
├── gc
│ ├── Concurrent.cpp # Concurrency utilities
│ ├── Concurrent.hpp
│ ├── GC.cpp # Garbage collector
│ └── GC.h
├── interpreter
│ ├── CallSite.cpp # Call site to denote a concrete calling
│ ├── CallSite.h
│ ├── Internal.h # Types that internally used
│ ├── Interpreter.cpp # Interpreter
│ ├── Interpreter.hpp
│ ├── MethodResolve.cpp # Resolve call site
│ └── MethodResolve.h
├── misc
│ ├── Debug.cpp # Debugging utilities
│ ├── Debug.h
│ ├── NativeMethod.cpp # Java native methods
│ ├── NativeMethod.h
│ ├── Option.h # VM arguments and options
│ ├── Utils.cpp # Tools and utilities
│ └── Utils.h
├── runtime
│ ├── JavaClass.cpp # Internal representation of java.lang.Class
│ ├── JavaClass.h
│ ├── JavaException.cpp # Exception handling
│ ├── JavaException.h
│ ├── JavaFrame.cpp # Execution frame
│ ├── JavaFrame.hpp
│ ├── JavaHeap.cpp # Java heap, where objects are located
│ ├── JavaHeap.hpp
│ ├── JavaType.h # Java type definitions
│ ├── ClassSpace.cpp # Store JavaClass
│ ├── ClassSpace.h
│ ├── ObjectMonitor.cpp # synchronized(){} block implementation
│ ├── ObjectMonitor.h
│ ├── RuntimeEnv.cpp # Runtime structures
│ └── RuntimeEnv.h
└── vm
├── Main.cpp # Parse command line arguments
├── YVM.cpp # Abstraction of virtual machine
└── YVM.h

---------------------------------
腾讯云没有 JVM ,但有自己的 JDK : Tencent JDK——Kona
https://github.com/Tencent/TencentKona-17
目前,Kona 有 8 、 11 、 17 三个版本。
-----------------------------------
阿里巴巴的 JDK —— ,也有三个版本 8 、 11 、 21 。
Alibaba Dragonwell, as a downstream version of OpenJDK, is the in-house OpenJDK implementation at Alibaba.
可以参考的一篇文章
What is LLVM? The power behind Swift, Rust, Clang, and more
What is LLVM? The power behind Swift, Rust, Clang, and more | InfoWorld
JDK \ JRE \ JVM 的关系,以及 Open JDK \ Oracle Java SE \ IBM Semeru \ OpenJ9 \ Temurin JDK 之间的关系
为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。
更多推荐



所有评论(0)