Sign in

gwj / at91sam9263 · Commits

GitLab

  • Go to dashboard
  • Project
  • Activity
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Snippets
  • Commits 8,232
  • Compare
  • Branches 2
  • Tags 0
  • at91sam9263
11 Nov, 2008
15 commits
  • target-mips: gen_compute_branch1() ...
    a6e92a65
    Optimize code generation in gen_compute_branch1():
    - Directly use I32 variables instead of converting values from _tl to
      _i32 and back to _tl.
    - Write the result directly to bcond instead of passing by a local
      variable.
    - Temp variables are valid up to and *including* the brcond instruction.
      Use them instead of temp local variables.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5684 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:50:51 +0000  
    Browse File »
  • target-mips: optimize movc*() ...
    9bf3eb2c
    Optimize code generation in gen_movc*():
    - Temp variables are valid up to and *including* the brcond instruction.
      Use them instead of temp local variables.
    - Avoid using temporary variables to transfer values.
    - Access fpu_fcr31 directly in gen_movcf_ps().
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5683 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:50:43 +0000  
    Browse File »
  • target-mips: optimize gen_farith() ...
    2a0ab998
    Optimize code generation in gen_farith():
    - Temp variables are valid up to and *including* the brcond instruction.
      Use them instead of temp local variables.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5682 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:50:33 +0000  
    Browse Code »
  • target-mips: optimize gen_muldiv() ...
    b10fa3c9
    Optimize code generation in gen_muldiv():
    - Don't do sign extension when the value is already guaranteed to be
      sign extended (otherwise, results are marked as UNPREDICTABLE).
    - Access the LO, HI registers directly instead of writting them through
      a temporary variable.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5681 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:50:25 +0000  
    Browse File »
  • target-mips: optimize gen_arith()/gen_arith_imm() ...
    507563e8
    Optimize code generation in gen_arith()/gen_arith_imm():
    - Don't do sign extension when the value is already guaranteed to be
      sign extended (otherwise, results are marked as UNPREDICTABLE).
    - When the value is sign extended, compare the value to 0 instead of
      testing bit 31/63.
    - Temp variables are valid up to and *including* the brcond instruction.
      Use them instead of temp local variables.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5680 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:50:17 +0000  
    Browse Code »
  • target-mips: convert bit shuffle ops to TCG ...
    49bcf33c
    Bit shuffle operations can be written with very few TCG instructions
    (between 5 and 8), so it is worth converting them to TCG.
    
    This code also move all bit shuffle generation code to a separate
    function in order to have a cleaner exception code path, that is it
    doesn't store back the TCG register to the target register after the
    exception, as the TCG register doesn't exist anymore.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5679 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:47:06 +0000  
    Browse File »
  • target-mips: convert bitfield ops to TCG ...
    505ad7c2
    Bitfield operations can be written with very few TCG instructions
    (between 2 and 5), so it is worth converting them to TCG.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5678 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:46:58 +0000  
    Browse File »
  • target-mips: optimize gen_op_addr_add() (2/2) ...
    2623c1ec
    Instead of dynamically generating different code depending on the UX
    flag, add a new flag in ctx->flags to generate different code.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5677 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:39:33 +0000  
    Browse Dir »
  • target-mips: optimize gen_op_addr_add() (1/2) ...
    d144d1d9
    The user mode can be tested at translation time using ctx->hflags.
    This simplifies gen_op_addr_add().
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5676 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:36:52 +0000  
    Browse File »
  • target-mips: optimize gen_save_pc() ...
    1eb75d4a
    We obviously don't need to use a temporary variable to write PC.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5675 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:36:04 +0000  
    Browse Code »
  • target-mips: fix mft* helpers/call ...
    add69063
    This patch attempts to fix mft* helpers and the associated TCG calls.
    mft* helpers do not take a register in argument, however:
    - some helpers are called with an argument while they do not take one.
    - some helpers are declared with an argument they don't use.
    
    Acked-by: Thiemo Seufer <ths@networkno.de>
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5674 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:34:39 +0000  
    Browse File »
  • target-mips: fix temporary variable freeing in op_ldst_##insn() ...
    c24135ff
    Move tcg_temp_free() out of the conditional part to make sure
    the TCG temporary variable is freed in all cases.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    Acked-by: Thiemo Seufer <ths@networkno.de>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5673 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:34:30 +0000  
    Browse Code »
  • target-alpha: add proper fcntl definitions ...
    1f961124
    On Alpha the target to native fcntl definitions were missing.  Because of
    this, programs trying to open files with the O_CREAT option were getting
    O_APPEND instead, etc.
    
    This was keeping gcc from the spec benchmarks from running, among other
    things.
    
    (Vince Weaver)
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5672 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:30:48 +0000  
    Browse Dir »
  • target-alpha: fix double TCG variable allocation ...
    9cd38c23
    Noticed by Chris Krumme.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5671 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-11 11:30:04 +0000  
    Browse Dir »
  • Fix alignment problem with some 64bit load/store instructions ...
    828808f5
    LD/STD/LWA require displacement to be multiple of 4, provide
    tcg_out_ldsta which checks the supplied displacement and falls
    back on indexed variant when the check fails. All uses of
    LD/STD/LWA outside of tcg_out_ldst appear to be safe.
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5670 c046a42c-6fe2-441c-8c8c-71466251a162
    malc authored
    2008-11-11 03:04:57 +0000  
    Browse Dir »

10 Nov, 2008
6 commits
  • KVM: simplify kvm_cpu_exec hook ...
    becfc390
    We don't need to use cpu_loop_exit() because we never use the 
    condition codes so everything can be folded into a single case.
    
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
    
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5669 c046a42c-6fe2-441c-8c8c-71466251a162
    aliguori authored
    2008-11-10 15:55:14 +0000  
    Browse File »
  • target-ppc: convert most SPE integer instructions to TCG ...
    57951c27
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5668 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-10 11:10:23 +0000  
    Browse File »
  • target-alpha: fix cmpbge instruction ...
    970d622e
    The cmpbge instruction should compare all 8 bytes of one 64-bit value with
    another.  However, we were looping with a < 7 condition which was skipping
    the top byte.  So if we were doing a compare where the top byte was
    important, we could get the wrong result (this notably breaks the strlen()
    function with certain sized strings).
    
    (Vince Weaver)
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5667 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-10 11:10:14 +0000  
    Browse Dir »
  • use target_mmap() to allocate idt, gdt and ldt (Kirill A. Shutemov). ...
    e441570f
    env->*dt.base should fit target address space, so we should use
    target_mmap to allocate them.
    
    Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5666 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-10 02:55:33 +0000  
    Browse Code »
  • Currently trying to turn an oversized directory into a VVFAT image will ...
    8ce0f869
    result in a cryptic error (and an abort):
      qemu: block-vvfat.c:97: array_get: Assertion `index < array->next' failed.
      Aborted
    
    Turn this into an actually useful error message:
      Directory does not fit in FAT16 (capacity 504MB)
      qemu: could not open disk image fat:$DIR/
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5665 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-10 01:34:27 +0000  
    Browse Code »
  • x86 CPUID extended family/model (Andre Przywara). ...
    59795a1f
    x86 CPUs feature extended family/model bits in CPUID leaf
    0000_0001|EAX. Refer to page 10 in:
    http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/25481.pdf
    
    Those bits are necessary to model newer AMD CPUs:
    -cpu qemu64,family=15,model=65,stepping=3 or
    -cpu qemu64,family=16,model=4,stepping=2
    
    Signed-off-by: Andre Przywara <andre.przywara@amd.com>
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5664 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-10 01:05:01 +0000  
    Browse Code »

09 Nov, 2008
12 commits
  • Use TCG not op ...
    2576d836
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5663 c046a42c-6fe2-441c-8c8c-71466251a162
    blueswir1 authored
    2008-11-09 19:52:36 +0000  
    Browse File »
  • Use andc, orc, nor and nand ...
    81b5b816
    Also fix which argument gets negated in fandnot[12] and fornot[12]
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5662 c046a42c-6fe2-441c-8c8c-71466251a162
    blueswir1 authored
    2008-11-09 19:50:37 +0000  
    Browse File »
  • target-ppc: fix TCG argument ...
    741a7444
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5661 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 18:27:28 +0000  
    Browse Code »
  • target-ppc: Remove a few TCG temp variable leaks ...
    a9730017
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5660 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 17:27:36 +0000  
    Browse Code »
  • target-ppc: fixes for gen_op_neg() ...
    ec6469a3
    - Rename to gen_op_arith_neg for consistency with other functions.
    - Correctly free TCG temp variable.
    - Fix the return value in 64-bit mode in case of overflow.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5659 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 17:27:27 +0000  
    Browse Code »
  • target-ppc: gen_op_arith_divw() & gen_op_arith_divd fixes ...
    2ef1b120
    gen_op_arith_divw():
    - "deoptimize" gen_op_arith_divw to make it more readable.
    - Correctly free TCG temp variable
    
    gen_op_arith_divd():
    - Call the right function.
    
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5658 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 17:27:19 +0000  
    Browse Code »
  • target-ppc: optimize mullw and make the code more readable ...
    1e4c090f
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5657 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 17:27:11 +0000  
    Browse Code »
  • target-ppc: indentation fixes ...
    bdc4e053
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5656 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-09 17:27:03 +0000  
    Browse Code »
  • Sparc32 BSD user support ...
    53939066
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5655 c046a42c-6fe2-441c-8c8c-71466251a162
    blueswir1 authored
    2008-11-09 09:31:37 +0000  
    Browse Dir »
  • Document bluetooth support in qemu-doc. ...
    2d564691
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5654 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-09 02:24:54 +0000  
    Browse Code »
  • Add qemu_strndup: qemu_strdup with length limit. ...
    ac4b0d0c
    Also optimise qemu_strdup by using memcpy - using pstrcpy is usually 
    suboptimal.
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5653 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-09 00:28:40 +0000  
    Browse File »
  • Add the -bt switch for setting up bluetooth stuff. ...
    dc72ac14
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5652 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-09 00:04:26 +0000  
    Browse Code »

08 Nov, 2008
4 commits
  • Revert r5532, r5536 and a piece of r5531. ...
    793a10a2
    The use of strncat and strndup was correct, pstrcpy and pstrdup wasn't.
    I'll try to restore building on non-gnu OSes in a later commit.
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5651 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-08 23:57:26 +0000  
    Browse File »
  • Use an option rom instead of boot sector for -kernel ...
    4fc9af53
    Generate an option rom instead of using a hijacked boot sector for kernel
    booting.  This just requires adding a small option ROM header and a few more
    instructions to the boot sector to take over the int19 vector and run our
    boot code.
    
    A disk is no longer needed when using -kernel on x86.
    
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
    
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5650 c046a42c-6fe2-441c-8c8c-71466251a162
    aliguori authored
    2008-11-08 16:27:07 +0000  
    Browse File »
  • target-alpha: fix the return value of stl_c/stq_c ...
    6223246a
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5649 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-08 09:10:39 +0000  
    Browse File »
  • target-ppc: fix tcg fatal error on i386 host ...
    4870167d
    It looks like the i386 runs out of registers for allocation due
    to too many global registers allocated by the ppc target.
    
    Here is a quick and dirty fix that seems to solve the problem.
    This should be considered as temporary.
    
    Signed-off-by: Laurent Desnogues <laurent.desnogues@gmail.com
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5648 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-08 08:57:45 +0000  
    Browse Code »

07 Nov, 2008
3 commits
  • Use the right format string to printf sector num with DEBUG_IDE. ...
    18c5f8ea
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5647 c046a42c-6fe2-441c-8c8c-71466251a162
    balrog authored
    2008-11-07 23:05:14 +0000  
    Browse File »
  • Fix some build issues for BSD. ...
    24646c7e
    Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5646 c046a42c-6fe2-441c-8c8c-71466251a162
    blueswir1 authored
    2008-11-07 16:55:48 +0000  
    Browse Code »
  • target-alpha: fix locked loads/stores ...
    57a92c8e
    Fix reading of cpu_lock in gen_qemu_stql_c, original patch from Laurent
    Desnogues.
    
    A new flag was added to gen_store_mem to allocate local temps instead
    of temps;  this flag should be set when the tcg_gen_qemu_store callback
    uses brcond before using the temps or else liveness analysis will get
    rid of the temps.
    
    This also adds lock printing in cpu_dump_state which can help
    debug.
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5645 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
    2008-11-07 14:00:24 +0000  
    Browse Code »