Use the `x86_64` crate instead of `x86` #289

Merged
merged 3 commits into from Mar 19, 2017

Conversation

1 participant
@phil-opp
Owner

phil-opp commented Mar 15, 2017

This PR changes all uses of the x86 crate to the x86_64 crate, which has a nicer structure (IMHO) and provides more abstractions. For example, it provides an IDT type that uses the new x86-interrupt calling convention, which we will use soon.

@phil-opp phil-opp merged commit 3791135 into master Mar 19, 2017

3 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details
deploy/netlify Deploy preview ready!
Details

@phil-opp phil-opp deleted the x86_64-crate branch Mar 19, 2017

@phil-opp phil-opp added the relnotes label Mar 19, 2017

4e554c4c added a commit to 4e554c4c/ESALP-1 that referenced this pull request Jun 27, 2017

Fix compilation and generally improve things
This project hasn't had a commit in awhile, so this is more of a messy
sweep-up job than anything else.
Months of negligence on a "nightly" versioned project leads to several
compilation failures, which have now been fixed. These include the
merging of `collections` and `alloc` crates. The change of the `Unique`
struct. And a new target option has been added, which made cross cross
compilation fail.
There have been also several general improvements. These include the new
use of the `x86_64` crate, instead of x86, which simplifies code (but
also requires a quite larger stack). This enables interrupt handling to
be greatly simplified when paired with the new "x86-interrupt" abi. Also
there is a small change to printing that allows for waiting for the
writer to flush. This is very useful for color switching.
Finally there have been a few minor changes, including changing the name
of the ugly `(ARCH)-unknown-none-gnu` to `(ARCH)-ESALP`. And a small
.gdbinit file has been added which should simplify debugging with qemu.

Many of these changes are better shown my themselves in Blog-OS. Please
see phil-opp/blog_os#289 phil-opp/blog_os#325 and phil-opp/blog_os#333
for more details.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment