[RISCV] Bugfix createRISCVELFObjectWriter

r315275 set the IsLittleEndian parameter incorrectly. This patch corrects 
this, and adds a test to ensure such mistakes will be caught in the future.

llvm-svn: 316091
This commit is contained in:
Alex Bradbury 2017-10-18 16:11:31 +00:00
parent 9e0f7f1a23
commit 13ce95b77f
2 changed files with 43 additions and 1 deletions

View File

@ -67,5 +67,5 @@ llvm::createRISCVELFObjectWriter(raw_pwrite_stream &OS, uint8_t OSABI,
bool Is64Bit) {
return createELFObjectWriter(
llvm::make_unique<RISCVELFObjectWriter>(OSABI, Is64Bit), OS,
/*IsLittleEndian=*/false);
/*IsLittleEndian=*/true);
}

View File

@ -0,0 +1,42 @@
# RUN: llvm-mc %s -filetype=obj -triple=riscv32 | llvm-readobj -h \
# RUN: | FileCheck -check-prefix=RV32 %s
# RUN: llvm-mc %s -filetype=obj -triple=riscv64 | llvm-readobj -h \
# RUN: | FileCheck -check-prefix=RV64 %s
# RV32: Format: ELF32-riscv
# RV32: Arch: riscv32
# RV32: AddressSize: 32bit
# RV32: ElfHeader {
# RV32: Ident {
# RV32: Magic: (7F 45 4C 46)
# RV32: Class: 32-bit (0x1)
# RV32: DataEncoding: LittleEndian (0x1)
# RV32: FileVersion: 1
# RV32: OS/ABI: SystemV (0x0)
# RV32: ABIVersion: 0
# RV32: }
# RV32: Type: Relocatable (0x1)
# RV32: Machine: EM_RISCV (0xF3)
# RV32: Version: 1
# RV32: Flags [ (0x0)
# RV32: ]
# RV32: }
# RV64: Format: ELF64-riscv
# RV64: Arch: riscv64
# RV64: AddressSize: 64bit
# RV64: ElfHeader {
# RV64: Ident {
# RV64: Magic: (7F 45 4C 46)
# RV64: Class: 64-bit (0x2)
# RV64: DataEncoding: LittleEndian (0x1)
# RV64: FileVersion: 1
# RV64: OS/ABI: SystemV (0x0)
# RV64: ABIVersion: 0
# RV64: }
# RV64: Type: Relocatable (0x1)
# RV64: Machine: EM_RISCV (0xF3)
# RV64: Version: 1
# RV64: Flags [ (0x0)
# RV64: ]
# RV64: }