[PATCH] D91338: [X86] Zero-extend pointers to i64 for x86_64
Pengfei Wang via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 12 21:56:05 PST 2020
pengfei added inline comments.
================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:3073
Val = lowerRegToMasks(Val, VA.getValVT(), VA.getLocVT(), dl, DAG);
} else
Val = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), Val);
----------------
Is some risk here? It is used to truncate i1 only before.
================
Comment at: llvm/test/CodeGen/X86/musttail-varargs.ll:350
; LINUX-X32-NEXT: movl 4(%edi), %r11d
+; LINUX-X32-NEXT: movl %edi, %edi
; LINUX-X32-NEXT: jmpq *%r11 # TAILCALL
----------------
I have some doubt on the implementation. Is caller always needs zeroext for the pointer even if it knows the upper bits are zero? Form line 309, the callers seems know the upper bits are zero.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D91338/new/
https://reviews.llvm.org/D91338
More information about the llvm-commits
mailing list