How Clang Compiles a Function

 3r3308. 3r3-31. I planned to write an article about how LLVM optimizes a function, but first you need to write how Clang translates C or C ++ to LLVM.
 3r3308.
 3r3308. How Clang Compiles a Function
 3r3308. lectures on cyclic optimization :
 3r3308.
 3r3308.
bool is_sorted (int * a, int n) {
for (int i = 0; i < n - 1; i++)
if (a> a[i + 1])
return false;
return true;
} 3rr989.  3r3308. Since Clang does not make any optimizations, and since LLVM IR was originally designed to work with C and C ++, the conversion is relatively easy. I will use Clang ??? (or a close version, since this one has not yet been released) on x86-64.
 3r3308.
 3r3308. T...
[/i]
+ 0 -

Code profiling with LLVM

The Curse of Non-Determinism


 
Code profiling with LLVM  
My first attempt to write an LLVM pass - I love these segfolts
 
 
Recently, I ran into an interesting task - I needed a deterministic and cross-platform method for determining the execution time of C ++ code. By the word "deterministic" I mean that the same code will be executed for the same number of units of time. By cross-platform, I understand that the same code under Windows and under Ubuntu will be executed in the same amount of time units.
 
 
Naturally, the time measurement on the CPU does not satisfy these conditions. The machine code varies depending on ...[/h]
+ 0 -

Compile Kotlin: JetBrains VS ANTLR VS JavaCC

Compile Kotlin: JetBrains VS ANTLR VS JavaCC
 
How quickly does Kotlin parse and what does it matter? JavaCC or ANTLR? Is the source code from JetBrains suitable?
 
Compare, fantasize and wonder.
 
3r311.
 

tl; dr


 
3r33434. JetBrains are too hard to carry, ANTLR is hyip but unexpectedly slow, and JavaCC is still too early to write off. 3r33434.
 
 
Parsing a simple Kotlin file with three different implementations:
 
3r33333.  
3r33399.  
Implementation  
First run  
The 1000th launch of  
jar size (parser)  
 
3r33399.  
3r33410. JetBrains  
3r33410. 3254ms  
3r33410. 16.6ms  
3r33410. 35.3MB ...[/h]
+ 0 -

An overview of five HTTP libraries for web development

One of the most important tasks that a programmer has to solve when developing web projects is the organization of data exchange between client and server parts of such projects. It may look like this: the user presses a button on a page that is open in the browser, the system responds to a request to the server, after which the server sends the page the requested data. In order to display such data on the page, without reloading it, they are processed, after which the page is updated and the user gets what he needs. 3r33338.  
3r33338.  
An overview of five HTTP libraries for web development ...
+ 0 -

The release of Rust ??? and Rust 2018

 3r32424. 3r3-31. 3r301901. The Rust development team is pleased to announce the release of a new version of Rust, ???.? as well as "Rust 2018". Rust is a programming language that allows everyone to create reliable and effective software. 3r33912. 3r33899.  3r32424. 3r301901. If you have a previous version of Rust installed using r3r3880. rustup 3r3881. , then to update Rust to version ??? you just need to run:
3r33899.  3r32424. 3r33869. $ rustup update stable
3r33899.  3r32424. 3r301901. If you have not yet installed rustup 3r3881. You can ...
+ 0 -

Imba: JavaScript-compatible language for quick work with DOM

Imba: JavaScript-compatible language for quick work with DOM 3r? 3517. 3r3-31. Imba is an open source programming language created by Scrimba specifically for developing web applications. It compiles into jаvascript and is able to work inside an existing JS ecosystem. It is, for example, about Node.js, about npm, about Webpack. 3r3501.  3r? 3517. 3r3501.  3r? 3517. Imba’s main strength is that it will allow you to create much faster applications than those based on libraries using Virtual DOM technology, like React and Vue. Application performance increases due to how Imba handles DOM updates. Details about this can be read ...
+ 0 -

JavaScript Guide, Part 9: ES? ES? and ES9 Features Overview

JavaScript Guide, Part 9: ES? ES? and ES9 Features Overview 
3r3-31. Today, in the ninth part of the translation of the jаvascript manual, we will review the features that have emerged in the language thanks to the standards ES? ES8 and ES9.
 
 
Part 1: first program, language features, standards 3—3-3055.
 

Part 2: The style of the code and the structure of the programs 3r31055.
 

Part 3: variables, data types, expressions, objects 3r31055.
 

Part 4: features

 
Part 5: Arrays and Cycles
 
Part 6: exceptions, semicolons, pattern literals
 
...
+ 0 -

The human price of Black Friday is

The human price of Black Friday is 3r33333.  
3r33333.  
3r33311. In America, it is now the height of Black Friday, and on this occasion, Vox interviewed a former manager of the Amazon - about what is happening in the largest online store during the fever of November and December. What do workers experience when they send 30?000 orders from a warehouse per day, and why they have a change in their attitude towards Christmas all their lives. unexpectedly decreased despite r3r341. Sanders effort
, and demand from which they suddenly started much more.
3r33333.  
3r33311. Free shipping, first introduced in these months, encourages customers ...
+ 0 -

JavaScript Guide, Part 5: Arrays and Loops

 3r31219. 3r3-31. Today, in the fifth part of the translation of the course on jаvascript, we will talk about arrays and cycles. Arrays are used in solving a variety of problems. Often work with arrays using loops.
 3r31219.
 3r31219. → Part 1: first program, language features, standards 3-3331207.
 3r31219. →
Part 2: The style of the code and the structure of the program

 3r31219. → Part 3: variables, data types, expressions, objects
 3r31219. → Part 4: Functions 3-3-31207.
 3r31219.
 3r31219.
JavaScript Guide, Part 5: Arrays and Loops
 3r31219.

 3r31219. 3r...
+ 0 -

Slot machines: where did they come from in the USSR and how is the

Slot machines: where did they come from in the USSR and how is thestructured?On November 3? RUVDS together with the Museum of Soviet Gaming Machines will hold the first in Russia Game Overnight old school video game tournament. Now there is a qualifying tournament, for 3 days already more than 300 habrizhiteley participated in the tournament. Few were able to take the test. You can try your hand at game site . In the meantime, we decided to recall how the first automata appeared in the USSR, tell us a little about their device and help players practice before the tournament. 3r33333.  3r33357. 3r33333.  3r33357. Slot machines appeared in the USSR much later than in ...
+ 0 -