Skip to content
This repository was archived by the owner on Feb 5, 2019. It is now read-only.

Commit 0c0c905

Browse files
author
Dylan McKay
committed
[emscripten] Recognize invariant intrinsics which are now overloaded
Invariant intrinsics are now suffixed with types.
1 parent 941cac6 commit 0c0c905

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

lib/Target/JSBackend/CallHandlers.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -599,11 +599,11 @@ DEF_CALL_HANDLER(llvm_lifetime_end, {
599599
return "";
600600
})
601601

602-
DEF_CALL_HANDLER(llvm_invariant_start, {
602+
DEF_CALL_HANDLER(llvm_invariant_start_p0i8, {
603603
return "";
604604
})
605605

606-
DEF_CALL_HANDLER(llvm_invariant_end, {
606+
DEF_CALL_HANDLER(llvm_invariant_end_p0i8, {
607607
return "";
608608
})
609609

@@ -1625,8 +1625,8 @@ void setupCallHandlers() {
16251625
SETUP_CALL_HANDLER(llvm_dbg_value);
16261626
SETUP_CALL_HANDLER(llvm_lifetime_start);
16271627
SETUP_CALL_HANDLER(llvm_lifetime_end);
1628-
SETUP_CALL_HANDLER(llvm_invariant_start);
1629-
SETUP_CALL_HANDLER(llvm_invariant_end);
1628+
SETUP_CALL_HANDLER(llvm_invariant_start_p0i8);
1629+
SETUP_CALL_HANDLER(llvm_invariant_end_p0i8);
16301630
SETUP_CALL_HANDLER(llvm_prefetch);
16311631
SETUP_CALL_HANDLER(llvm_objectsize_i32_p0i8);
16321632
SETUP_CALL_HANDLER(llvm_flt_rounds);

test/CodeGen/JS/invariant-intrinsics.ll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ declare void @bar(i8*)
1010

1111
define void @foo() {
1212
%p = alloca i8
13-
%i = call {}* @llvm.invariant.start(i64 1, i8* %p)
13+
%i = call {}* @llvm.invariant.start.p0i8(i64 1, i8* %p)
1414
call void @bar(i8* %p)
15-
call void @llvm.invariant.end({}* %i, i64 1, i8* %p)
15+
call void @llvm.invariant.end.p0i8({}* %i, i64 1, i8* %p)
1616
ret void
1717
}
1818

19-
declare {}* @llvm.invariant.start(i64, i8* nocapture)
20-
declare void @llvm.invariant.end({}*, i64, i8* nocapture)
19+
declare {}* @llvm.invariant.start.p0i8(i64, i8* nocapture)
20+
declare void @llvm.invariant.end.p0i8({}*, i64, i8* nocapture)

0 commit comments

Comments
 (0)