Huawei May Use Russian OS Instead Android

Due to US sanctions, popular smartphone manufacturer is negotiating of using Russian OS called Aurora, which is based on Sailfish OS
11 June 2019   1195

The Bell has received information from several unnamed sources about the discussion of the possibility of using the proprietary mobile operating system Aurora on some types of Huawei devices.

The movement in the direction of Aurora has so far limited itself only to a discussion of the possibility of using this OS, no plans have been presented. The discussion was attended by the Minister of Digital Development and Communications Konstantin Noskov and the Executive Director of Huawei. The meeting also raised the issue of creating a joint production of chips and software in Russia. The information was not confirmed at Rostelecom, but expressed willingness to cooperate.

Huawei declined to comment on the published information. At the same time, the company is developing its own mobile platform Hongmeng OS (Arc OS), providing compatibility with Android applications. The first release of Hongmeng OS is scheduled for the fourth quarter of this year. Two options will be offered - for China and the global smartphone market. It is alleged that Hongmeng OS has been in development since 2012 and was ready for the beginning of 2018, but was not delivered due to the use of Android as a main platform and partnership with Google.

There is evidence that for testing in China, the first batch of 1 million Hongmeng OS-based smartphones has already been distributed. Technical details are not disclosed yet and it is not clear whether the platform is built on Android code or only includes a layer for compatibility. Huawei has long been delivering its own Android edition - EMUI, it is possible that it is the basis of Hongmeng OS.

Huawei’s interest in alternative mobile systems is driven by restrictive measures introduced by the US Department of Commerce, which will restrict Huawei’s access to Android services falling under a commercial agreement with Google, as well as breaking commercial relations with ARM.

Sailfish is partly a proprietary mobile operating system with an open system environment, but closed by the user shell, basic mobile applications, QML components for building the Silica graphical interface, an interlayer for launching Android applications, a smart text input engine and a data synchronization system. The open system environment is built on the basis of Mer (fork MeeGo), which since April has been developing as an integral part of Sailfish, and packages of the Mer distribution package Nemo. On top of the Mer system components, a graphical stack is launched based on the Wayland and Qt5 library.

LLVM 10.0.0 to be Released

New version of the popular development toolkit brings, among other things, support for the C++ Concepts
26 March 2020   909

After six months of development, the release of the LLVM 10.0 project, a GCC-compatible toolkit (compilers, optimizers, and code generators), compiling programs into an intermediate bitcode of RISC-like virtual instructions (a low-level virtual machine with a multi-level optimization system), is presented. The generated pseudo-code can be converted using the JIT compiler into machine instructions directly at the time of program execution.

Among the new features of LLVM 10.0, there are support for C ++ Concepts (C ++ Concepts), termination of the launch of Clang in the form of a separate process, support for CFG checks (control flow guard) for Windows, and support for new CPU features.

The main innovations of LLVM 10.0:

  • New interprocedural optimizations and analyzers have been added to the Attributor framework. The prediction of the state of 19 different attributes, including 12 attributes of 12 LLVM IR and 7 abstract attributes such as liveness, is provided.
  • New built-in compiler matrix mathematical functions (Intrinsics) have been added, which, when compiled, are replaced by effective vector instructions.
  • Numerous improvements to the backends for the X86, AArch64, ARM, SystemZ, MIPS, AMDGPU, and PowerPC architectures. Added support for Cortex-A65, Cortex-A65AE, Neoverse E1 and Neoverse N1 CPUs. For ARMv8.1-M, ​​the code generation process has been optimized (for example, support for loops with minimal overhead has appeared) and support for auto-vectorization using the MVE extension has been added. Improved support for CPU MIPS Octeon. PowerPC includes vectorization of mathematical routines using the MASSV (Mathematical Acceleration SubSystem) library, improved code generation, and optimized memory access from loops. For x86, the processing of vector types v2i32, v4i16, v2i16, v8i8, v4i8 and v2i8 has been changed.
  • Improved code generator for WebAssembly. Added support for TLS (Thread-Local Storage) and atomic.fence instructions. Significantly expanded support for SIMD. WebAssembly object files added the ability to use function signatures with multiple values.
  • When processing cycles, the MemorySSA analyzer is used to determine the dependencies between different memory operations. MemorySSA can reduce compilation and execution time, or can be used instead of AliasSetTracker without sacrificing performance.
  • The LLDB debugger has significantly improved support for the DWARF v5 format. Improved build support with MinGW and added the initial ability to debug Windows executable files for ARM and ARM64 architectures. Added descriptions of options offered when autocompleting input by pressing tabs.
  • Enhanced LLD Linker Features. Improved support for the ELF format, including full compatibility of glob templates with the GNU linker, added support for the compressed debug sections ".zdebug", added the PT_GNU_PROPERTY property to determine the section (can be used in future Linux kernels), implemented modes "-z noseparate-code", "-z separate-code" and "-z separate-loadable-segments". Improved support for MinGW and WebAssembly.

Get more at the release notes.