[PATCH] microblaze: microblaze.md: Use 'SI' instead of 'VOID' for operand 1 of 'call_value_intern'

Chen Gang gang.chen.5i5j@gmail.com
Tue Oct 21 14:56:00 GMT 2014


On 09/25/2014 08:12 AM, Chen Gang wrote:
> OK, thanks, next month, I shall try Qemu for microblaze (I also focus on Qemu, and try to make patches for it).
> 

Excuse me, after tried upstream qemu, it cann't run microblaze correctly,
even for Xilinx qemu branch, I cann't run correctly either. I tried to
consult related members in qemu mailing list, but got no result.

After compared upstream branch and Xilinx branch, I am sure upstream
microblaze qemu is lack of several related main features about
microblaze.

For qemu, I have to only focus on upstream, and try bug fix patches, new
features and version merging are out of my current border, so sorry, I
have to stop trying qemu for microblaze gcc test, at present.

>> So I guess the root cause is: I only use cross-compiling environments
>> under fedora x86_64, no any real or virtual target for test.
> 
> Yes, if you want to test on a target, you will need a target.  You can either have a simulator (see binutils and sim/* for an example of how to write one) or target hardware in some form.
> 

After trying sim, for me, it is really useful way for test, although I
also met issues:

For a hello world C program, microblaze gcc succeeded building, gdb can
load and display the source code, and disassembe code successfully, but
sim reported failure, the related issue is below:

  [root@localhost test]# /upstream/release/bin/microblaze-gchen-linux-run ./test
  Loading section .interp, size 0xd vma 0x100000f4
  Loading section .note.ABI-tag, size 0x20 vma 0x10000104
  Loading section .hash, size 0x24 vma 0x10000124
  Loading section .dynsym, size 0x40 vma 0x10000148
  Loading section .dynstr, size 0x3c vma 0x10000188
  Loading section .gnu.version, size 0x8 vma 0x100001c4
  Loading section .gnu.version_r, size 0x20 vma 0x100001cc
  Loading section .rela.dyn, size 0x24 vma 0x100001ec
  Loading section .rela.plt, size 0x24 vma 0x10000210
  Loading section .init, size 0x58 vma 0x10000234
  Loading section .plt, size 0x44 vma 0x1000028c
  Loading section .text, size 0x3d0 vma 0x100002d0
  Loading section .fini, size 0x34 vma 0x100006a0
  Loading section .rodata, size 0x12 vma 0x100006d4
  Loading section .eh_frame, size 0x4 vma 0x100006e8
  Loading section .ctors, size 0x8 vma 0x100016ec
  Loading section .dtors, size 0x8 vma 0x100016f4
  Loading section .jcr, size 0x4 vma 0x100016fc
  Loading section .dynamic, size 0xd0 vma 0x10001700
  Loading section .got, size 0xc vma 0x100017d0
  Loading section .got.plt, size 0x18 vma 0x100017dc
  Loading section .data, size 0x10 vma 0x100017f4
  Start address 0x100002d0
  Transfer rate: 14424 bits in <1 sec.
  ERROR: Unknown opcode
  program stopped with signal 4.

For me, I guess it is sim's issue, and I shall try to fix it in the next
month, so sorry, I can not finish emulator for microblaze within this
month. :-(


Welcome any ideas, suggestions or completions.

Thanks.
-- 
Chen Gang

Open share and attitude like air water and life which God blessed



More information about the Gcc-patches mailing list