mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[WebAssembly] Switch to *-wasm as the default target triple.
This makes wasm32-unknown-unknown-wasm the default, which supports the .o file writer and the new linking ABI. To enable s2wasm-compatible output, use the wasm32-unknown-unknown-elf triple. llvm-svn: 323220
This commit is contained in:
parent
6d445ffece
commit
3c8e228ac9
@ -670,8 +670,6 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
|
||||
case Triple::tce:
|
||||
case Triple::tcele:
|
||||
case Triple::thumbeb:
|
||||
case Triple::wasm32:
|
||||
case Triple::wasm64:
|
||||
case Triple::xcore:
|
||||
return Triple::ELF;
|
||||
|
||||
@ -680,6 +678,10 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
|
||||
if (T.isOSDarwin())
|
||||
return Triple::MachO;
|
||||
return Triple::ELF;
|
||||
|
||||
case Triple::wasm32:
|
||||
case Triple::wasm64:
|
||||
return Triple::Wasm;
|
||||
}
|
||||
llvm_unreachable("unknown architecture");
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -mtriple=wasm32-unknown-unknown-wasm | FileCheck %s
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs | FileCheck %s
|
||||
|
||||
; CHECK: %bb.0
|
||||
; CHECK: #DEBUG_VALUE: usage:self <- %4
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc -o - %s | FileCheck %s
|
||||
; RUN: llc -o - %s -asm-verbose=false | FileCheck %s
|
||||
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
|
||||
target triple = "wasm32-unknown-unknown-wasm"
|
||||
|
||||
|
@ -1,22 +1,22 @@
|
||||
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
||||
; RUN: llc < %s -march=wasm32 | FileCheck %s
|
||||
; RUN: llc < %s -asm-verbose=false -disable-wasm-explicit-locals | FileCheck %s
|
||||
|
||||
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
|
||||
target triple = "wasm32-unknown-unknown-wasm"
|
||||
|
||||
declare i32 @get_int(i16 %arg)
|
||||
|
||||
define i32 @func_1(i16 %arg1 , i32 %arg2) #0 {
|
||||
; CHECK-LABEL: func_1:
|
||||
; CHECK: # %bb.0: # %entry
|
||||
; CHECK-NEXT: i32.const $push1=, 16
|
||||
; CHECK: i32.const $push1=, 16
|
||||
; CHECK-NEXT: i32.shl $push2=, $0, $pop1
|
||||
; CHECK-NEXT: i32.const $push4=, 16
|
||||
; CHECK-NEXT: i32.shr_s $push3=, $pop2, $pop4
|
||||
; CHECK-NEXT: i32.call $push0=, get_int@FUNCTION, $pop3
|
||||
; CHECK-NEXT: # fallthrough-return: $pop0
|
||||
; CHECK-NEXT: .endfunc
|
||||
; CHECK-NEXT: end_function
|
||||
entry:
|
||||
%retval = call i32 @get_int(i16 signext %arg1)
|
||||
ret i32 %retval
|
||||
}
|
||||
|
||||
attributes #0 = {noinline nounwind optnone}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
; RUN: llc < %s -asm-verbose=false | FileCheck %s
|
||||
; RUN: llc < %s -asm-verbose=false -disable-wasm-explicit-locals | FileCheck %s
|
||||
; Test that UMULO works correctly on 64-bit operands.
|
||||
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
|
||||
target triple = "wasm32-unknown-unknown"
|
||||
target triple = "wasm32-unknown-unknown-wasm"
|
||||
|
||||
; CHECK-LABEL: _ZN4core3num21_$LT$impl$u20$u64$GT$15overflowing_mul17h07be88b4cbac028fE:
|
||||
; CHECK: __multi3
|
||||
@ -21,7 +21,7 @@ attributes #0 = { inlinehint }
|
||||
attributes #1 = { nounwind readnone speculatable }
|
||||
|
||||
; CHECK-LABEL: wut:
|
||||
; CHECK: call __multi3@FUNCTION, $2, $0, $pop0, $1, $pop10
|
||||
; CHECK: call __multi3@FUNCTION, $2, $0, $pop0, $1, $pop7
|
||||
; CHECK: i64.load $0=, 8($2)
|
||||
define i1 @wut(i64, i64) {
|
||||
start:
|
||||
|
Loading…
x
Reference in New Issue
Block a user