Fix broken links for github page website (#1340)

JerryScript-DCO-1.0-Signed-off-by: Ryan Youngtae Seo ryan@cworkers.kr
This commit is contained in:
Ryan y. Seo 2016-09-12 21:58:50 +09:00 committed by Tilmann Scheller
parent c19318b057
commit 7dcd1e5e9f
9 changed files with 36 additions and 29 deletions

View File

@ -521,4 +521,4 @@ Value of x is 17
## Further steps
For further API description, please visit [API Reference page](https://samsung.github.io/jerryscript/api-reference/) on [JerryScript home page](https://samsung.github.io/jerryscript/).
For further API description, please visit [API Reference page]({{ site.github.url }}/api-reference/) on [JerryScript home page]({{ site.github.url }}/).

View File

@ -8,7 +8,7 @@ permalink: /internals/
{:toc}
# High-Level Design
![High-Level Design]({{ site.baseurl }}/img/engines_high_level_design.png){: class="thumbnail center-block img-responsive" }
![High-Level Design]({{ site.github.url }}/img/engines_high_level_design.png){: class="thumbnail center-block img-responsive" }
The diagram above shows the interactions between the major components of JerryScript: Parser and Virtual Machine (VM). Parser performs translation of input ECMAScript application into the byte-code with the specified format (refer to [Bytecode](#byte-code) and [Parser](#parser) page for details). Prepared bytecode is executed by the Virtual Machine that performs interpretation (refer to [Virtual Machine](#virtual-machine) and [ECMA](#ecma) pages for details).
@ -36,7 +36,7 @@ Function `parser_parse_source` carries out the parsing and compiling of the inpu
The interactions between the major components shown on the following figure.
![Parser dependency]({{ site.baseurl }}/img/parser_dependency.png){: class="thumbnail center-block img-responsive" }
![Parser dependency]({{ site.github.url }}/img/parser_dependency.png){: class="thumbnail center-block img-responsive" }
# Byte-code
@ -48,7 +48,7 @@ CBC is a CISC like instruction set which assigns shorter instructions for freque
The memory layout of the compiled byte code is the following.
![CBC layout]({{ site.baseurl }}/img/CBC_layout.png){: class="thumbnail center-block img-responsive" }
![CBC layout]({{ site.github.url }}/img/CBC_layout.png){: class="thumbnail center-block img-responsive" }
The header is a `cbc_compiled_code` structure with several fields. These fields contain the key properties of the compiled code.
@ -60,7 +60,7 @@ CBC instruction list is a sequence of byte code instructions which represents th
The memory layout of a byte-code is the following:
![byte-code layout]({{ site.baseurl }}/img/opcode_layout.png){: class="thumbnail center-block img-responsive" }
![byte-code layout]({{ site.github.url }}/img/opcode_layout.png){: class="thumbnail center-block img-responsive" }
Each byte-code starts with an opcode. The opcode is one byte long for frequent and two byte long for rare instructions. The first byte of the rare instructions is always zero (`CBC_EXT_OPCODE`), and the second byte represents the extended opcode. The name of common and rare instructions start with `CBC_` and `CBC_EXT_` prefix respectively.
@ -231,7 +231,7 @@ The major structure for data representation is `ECMA_value`. The lower two bits
* string
* object
![ECMA value representation]({{ site.baseurl }}/img/ecma_value.png){: class="thumbnail center-block img-responsive" }
![ECMA value representation]({{ site.github.url }}/img/ecma_value.png){: class="thumbnail center-block img-responsive" }
In case of number, string and object the value contains an encoded pointer, and
simple value is a pre-defined constant which can be:
@ -260,7 +260,7 @@ There are two possible representation of numbers according to standard IEEE 754:
The default is 8-byte (double),
but the engine supports the 4-byte (single precision) representation by setting CONFIG_ECMA_NUMBER_TYPE as well.
![Number]({{ site.baseurl }}/img/number.png){: class="thumbnail center-block img-responsive" }
![Number]({{ site.github.url }}/img/number.png){: class="thumbnail center-block img-responsive" }
Several references to single allocated number are not supported. Each reference holds its own copy of a number.
@ -274,7 +274,7 @@ An object can be a conventional data object or a lexical environment object. Unl
[Lexical environments](http://www.ecma-international.org/ecma-262/5.1/#sec-10.2) are implemented as objects in JerryScript, since lexical environments contains key-value pairs (called bindings) like objects. This simplifies the implementation and reduces code size.
![Object/Lexicat environment structures]({{ site.baseurl }}/img/ecma_object.png){: class="thumbnail center-block img-responsive" }
![Object/Lexicat environment structures]({{ site.github.url }}/img/ecma_object.png){: class="thumbnail center-block img-responsive" }
The objects are represented as following structure:
@ -285,7 +285,7 @@ The objects are represented as following structure:
### Properties of Objects
![Object properties]({{ site.baseurl }}/img/ecma_object_property.png){: class="thumbnail center-block img-responsive" }
![Object properties]({{ site.github.url }}/img/ecma_object_property.png){: class="thumbnail center-block img-responsive" }
Objects have a linked list that contains their properties. This list actually contains property pairs, in order to save memory described in the followings:
A property is 7 bit long and its type field is 2 bit long which consumes 9 bit which does not fit into 1 byte but consumes 2 bytes. Hence, placing together two properties (14 bit) with the 2 bit long type field fits into 2 bytes.
@ -316,7 +316,7 @@ Internal properties are special properties that carry meta-information that cann
LCache is a hashmap for finding a property specified by an object and by a property name. The object-name-property layout of the LCache presents multiple times in a row as it is shown in the figure below.
![LCache]({{ site.baseurl }}/img/ecma_lcache.png){: class="thumbnail center-block img-responsive" }
![LCache]({{ site.github.url }}/img/ecma_lcache.png){: class="thumbnail center-block img-responsive" }
When a property access occurs, a hash value is extracted from the demanded property name and than this hash is used to index the LCache. After that, in the indexed row the specified object and property name will be searched.

View File

@ -3,8 +3,8 @@ title: JerryScript Engine
#email: your-email@domain.com
description: > # this means to ignore newlines until "baseurl:"
JerryScript is a very lightweight JavaScript engine with capability to run on microcontrollers with less then 8KB of RAM.
baseurl: "/jerryscript" # the subpath of your site, e.g. /blog/
url: "http://samsung.github.io" # the base hostname & protocol for your site
# baseurl: "/jerryscript" # the subpath of your site, e.g. /blog/
# url: "http://samsung.github.io" # the base hostname & protocol for your site
#twitter_username: jekyllrb
#github_username: samsung

View File

@ -9,12 +9,12 @@
<title>JavaScript engine for Internet of Things{% if page.title %}: {{ page.title }} {% endif %}</title>
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/bootstrap.min.css" >
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/table.css">
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/bytecode.css">
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/block.css">
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/main.css">
<link rel="stylesheet" href="https://samsung.github.io/jerryscript/css/img.css">
<link rel="stylesheet" href="{{ site.github.url }}/css/bootstrap.min.css" >
<link rel="stylesheet" href="{{ site.github.url }}/css/table.css">
<link rel="stylesheet" href="{{ site.github.url }}/css/bytecode.css">
<link rel="stylesheet" href="{{ site.github.url }}/css/block.css">
<link rel="stylesheet" href="{{ site.github.url }}/css/main.css">
<link rel="stylesheet" href="{{ site.github.url }}/css/img.css">
<script>
window.addEventListener("hashchange", function() { scrollBy(0, -50) });

View File

@ -7,14 +7,14 @@
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="{{ site.baseurl }}/"><b>JerryScript</b></a>
<a class="navbar-brand" href="{{ site.github.url }}/"><b>JerryScript</b></a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
{% if page.url == "/" %}
<li class="active"><a href="{{ site.baseurl }}/">Home</a></li>
<li class="active"><a href="{{ site.github.url }}/">Home</a></li>
{% else %}
<li><a href="{{ site.baseurl }}/">Home</a></li>
<li><a href="{{ site.github.url }}/">Home</a></li>
{% endif %}
<li><a href="http://github.com/Samsung/jerryscript">View on Github</a></li>
<li><a href="http://www.iotjs.net">Powering <b>IoT.js</b></a></li>
@ -23,9 +23,9 @@
{% for p in site.pages %}
{% if p.title %}
{% if page.url == p.url %}
<li class="active"><a href="{{ p.url | prepend: site.baseurl }}" >{{ p.title }}</a></li>
<li class="active"><a href="{{ p.url | prepend: site.github.url }}" >{{ p.title }}</a></li>
{% else %}
<li><a href="{{ p.url | prepend: site.baseurl }}" >{{ p.title }}</a></li>
<li><a href="{{ p.url | prepend: site.github.url }}" >{{ p.title }}</a></li>
{% endif %}
{% endif %}
{% endfor %}

View File

@ -15,7 +15,7 @@
<!-- Bootstrap core JavaScript -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="https://samsung.github.io/jerryscript/bootstrap.min.js"></script>
<script src="{{ site.github.url }}/js/bootstrap.min.js"></script>
</body>
</html>

View File

@ -6,8 +6,8 @@ layout: null
<channel>
<title>{{ site.title | xml_escape }}</title>
<description>{{ site.description | xml_escape }}</description>
<link>{{ site.url }}{{ site.baseurl }}/</link>
<atom:link href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" rel="self" type="application/rss+xml"/>
<link>{{ site.github.url }}/</link>
<atom:link href="{{ "/feed.xml" | prepend: site.github.url }}" rel="self" type="application/rss+xml"/>
<pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
<lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
<generator>Jekyll v{{ jekyll.version }}</generator>
@ -16,8 +16,8 @@ layout: null
<title>{{ post.title | xml_escape }}</title>
<description>{{ post.content | xml_escape }}</description>
<pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
<link>{{ post.url | prepend: site.baseurl | prepend: site.url }}</link>
<guid isPermaLink="true">{{ post.url | prepend: site.baseurl | prepend: site.url }}</guid>
<link>{{ post.url | prepend: site.github.url }}</link>
<guid isPermaLink="true">{{ post.url | prepend: site.github.url }}</guid>
{% for tag in post.tags %}
<category>{{ tag | xml_escape }}</category>
{% endfor %}

View File

@ -18,6 +18,6 @@ permalink: /
</div>
<div class="learn_more">
<p>To learn more, please visit the <a href="http://github.com/Samsung/jerryscript">project on GitHub.</a></p>
<p>If you want to try JerryScript take a look at our documentation. It includes <a href="https://samsung.github.io/jerryscript/getting-started/">Getting Started</a> guides and <a href="https://samsung.github.io/jerryscript/api-reference/">JerryScript APIs reference</a>. </p>
<p>If you want to try JerryScript take a look at our documentation. It includes <a href="{{ site.github.url }}/getting-started/">Getting Started</a> guides and <a href="{{ site.github.url }}/api-reference/">JerryScript APIs reference</a>. </p>
<p>Please, report all bugs and feature requests on JerryScript <a href="https://github.com/Samsung/jerryscript/issues">issue tracker</a>. Feel free to ask questions on <a href="https://github.com/Samsung/jerryscript/labels/question">issue tracker</a>.</p>
</div>

7
js/bootstrap.min.js vendored Normal file

File diff suppressed because one or more lines are too long