Code Monkey home page Code Monkey logo

jia32's People

Contributors

glacierw avatar hackjackhack avatar hsucw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

hsucw glacierw

jia32's Issues

rflags_compute! and rflags_compute_XXX! need to be optimized

It seems that rflags_compute! and rflags_compute_XXX! involve too many unstable conversions and possible exceptions. The generated code contains lots of jl_XXX.

Filename: /home/jack/julia/jia32/CPU.jl
Source line: 406
    pushq   %rbp
    movq    %rsp, %rbp
    pushq   %r15
    pushq   %r14
    pushq   %r13
    pushq   %r12
    pushq   %rbx
    subq    $72, %rsp
    movq    %rdi, %r14
    movq    $8, -88(%rbp)
Source line: 406
    movabsq $jl_pgcstack, %rax
    movq    (%rax), %rcx
    movq    %rcx, -80(%rbp)
    leaq    -88(%rbp), %rcx
    movq    %rcx, (%rax)
    movq    $0, -56(%rbp)
    movq    $0, -48(%rbp)
    movq    $0, -72(%rbp)
    leaq    -64(%rbp), %rax
    movl    $1, -92(%rbp)
Source line: 406
    movabsq $jl_apply_generic, %rbx
    movq    %rsi, -64(%rbp)
    movabsq $140323016195184, %rdi  # imm = 0x7F9F7F88BC70
    movq    %rax, %rsi
    movq    %rax, %r12
    movl    $1, %edx
    callq   *%rbx
    movq    %rax, %r13
    movq    %r13, -72(%rbp)
Source line: 407
    movq    120(%r14), %r15
    subq    128(%r14), %r15
    jb  L155
    movl    $0, -92(%rbp)
L155:   movabsq $140323002320504, %rax  # imm = 0x7F9F7EB50678
Source line: 410
    movq    (%rax), %rax
    movq    %rax, -64(%rbp)
    movabsq $140323025118760, %rax  # imm = 0x7F9F8010E628
    movq    (%rax), %rax
    movq    %rax, -56(%rbp)
    movzbl  %r15b, %edi
    incq    %rdi
    movabsq $jl_box_uint64, %rax
    callq   *%rax
    movq    %rax, -48(%rbp)
    movabsq $140323016939728, %rdi  # imm = 0x7F9F7F9418D0
    leaq    -56(%rbp), %rsi
    movl    $2, %edx
    callq   *%rbx
    movq    %rax, -56(%rbp)
    movabsq $140323015385200, %rdi  # imm = 0x7F9F7F7C6070
    movq    %r12, %rsi
    movl    $2, %edx
    callq   *%rbx
    movabsq $35080746978788, %rcx   # imm = 0x1FE7DF764DE4
    movq    -8(%rax), %rdx
    shrq    $2, %rdx
    cmpq    %rcx, %rdx
    jne L614
Source line: 411
    movq    120(%r14), %rbx
    movq    128(%r14), %rcx
Source line: 410
    movq    %rcx, -104(%rbp)
    movl    (%rax), %eax
    movl    %eax, -108(%rbp)
Source line: 412
    movq    %r15, %rdi
Source line: 410
    movabsq $jl_box_uint64, %rax
Source line: 412
    callq   *%rax
    movq    %rax, -64(%rbp)
    movq    %r13, -56(%rbp)
    movabsq $jl_apply_generic, %r13
    movabsq $140323018277136, %rdi  # imm = 0x7F9F7FA88110
    movq    %r12, %rsi
    movl    $2, %edx
    callq   *%r13
    movabsq $140323020865472, %rcx  # imm = 0x7F9F7FCFFFC0
    movq    %rax, -64(%rbp)
    movq    %rcx, -56(%rbp)
    movabsq $140322989929328, %rdi  # imm = 0x7F9F7DF7F370
    movq    %r12, %rsi
    movl    $2, %edx
    callq   *%r13
    movabsq $35080746877316, %rcx   # imm = 0x1FE7DF74C184
    movq    -8(%rax), %rdx
    shrq    $2, %rdx
    cmpq    %rcx, %rdx
    jne L665
    movl    $64, %r9d
    movabsq $jl_false, %rcx
    cmpq    (%rcx), %rax
    jne L452
    xorl    %r9d, %r9d
L452:   movl    $8, %ecx
Source line: 413
    subq    112(%r14), %rcx
    movq    %rcx, %rax
    sarq    $63, %rax
    addq    %rax, %rcx
    xorq    %rax, %rcx
Source line: 414
    movq    120(%r14), %rax
    movq    %rax, %rdx
    xorq    %r15, %rdx
    xorq    128(%r14), %rax
    andq    %rdx, %rax
Source line: 413
    movq    %r15, %rdi
    shrq    %cl, %rdi
    movq    $-2262, %rsi            # imm = 0xFFFFFFFFFFFFF72A
Source line: 414
    shrq    %cl, %rax
Source line: 416
    andq    32(%r14), %rsi
    movl    -108(%rbp), %edx
Source line: 417
    orl -92(%rbp), %edx
    movabsq $jl_pgcstack, %r8
Source line: 413
    andl    $128, %edi
Source line: 411
    xorl    %r15d, %ebx
    xorl    %r10d, %r10d
Source line: 414
    shlq    $4, %rax
    andl    $2048, %eax             # imm = 0x800
Source line: 413
    cmpq    $63, %rcx
Source line: 414
    cmoval  %r10d, %eax
Source line: 413
    cmoval  %r10d, %edi
Source line: 411
    movq    -104(%rbp), %rcx
    xorl    %ecx, %ebx
    andl    $16, %ebx
Source line: 417
    orl %edx, %ebx
    orl %r9d, %ebx
    orl %edi, %ebx
    orl %eax, %ebx
    orq %rsi, %rbx
    movq    %rbx, 32(%r14)
    movq    -80(%rbp), %rax
    movq    %rax, (%r8)
    movq    %rbx, %rax
    addq    $72, %rsp
    popq    %rbx
    popq    %r12
    popq    %r13
    popq    %r14
    popq    %r15
    popq    %rbp
    ret
Source line: 410
L614:   movabsq $jl_type_error_rt_line, %rbx
    movabsq $140331654624464, %rdi  # imm = 0x7FA1826CB4D0
    movabsq $140331654623259, %rsi  # imm = 0x7FA1826CB01B
    movabsq $140322987915152, %rdx  # imm = 0x7F9F7DD93790
    movq    %rax, %rcx
    movl    $410, %r8d              # imm = 0x19A
    callq   *%rbx
Source line: 412
L665:   movabsq $jl_type_error_rt_line, %rbx
    movabsq $140331654624464, %rdi  # imm = 0x7FA1826CB4D0
    movabsq $140331654623345, %rsi  # imm = 0x7FA1826CB071
    movabsq $140322987509264, %rdx  # imm = 0x7F9F7DD30610
    movq    %rax, %rcx
    movl    $412, %r8d              # imm = 0x19C
    callq   *%rbx

opc_list.jl not found

Once I git pull the source, and I try to run the main.jl.
But it turned out to be an error
"ERROR: LoadError: LoadError: LoadError: LoadError: could not open file /..../jia32/instr/opc_list.jl"

I found the op_list.jl is added into .git_ignore

Is it an mistake or should I do something more for correction ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.