Page MenuHomePhabricator

yuyichao (Yichao Yu)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 23 2016, 8:31 AM (191 w, 1 d)

Recent Activity

Nov 2 2017

yuyichao committed rL317201: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on….
Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on…
Nov 2 2017, 5:19 AM
yuyichao closed D39434: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on call site with operand bundle by committing rL317201: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on….
Nov 2 2017, 5:19 AM

Oct 30 2017

yuyichao updated the diff for D39434: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on call site with operand bundle.

Updated the test to match the format after autoupgrade.

Oct 30 2017, 5:42 PM
yuyichao added a comment to D39434: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on call site with operand bundle.

Actually I just realized that the last test is referring to auto upgraded attribute numbers, I'll check if I can directly use new attribute syntax and have more predictable numbers (or do regex matching instead)

Oct 30 2017, 3:05 PM
yuyichao created D39434: Allow inaccessiblememonly and inaccessiblemem_or_argmemonly to be overwriten on call site with operand bundle.
Oct 30 2017, 2:10 PM

Oct 26 2017

yuyichao committed rL316679: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM….
Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM…
Oct 26 2017, 10:37 AM
yuyichao closed D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer by committing rL316679: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM….
Oct 26 2017, 10:37 AM
yuyichao abandoned D39319: Set contract flag when setting unsafe algebra flag.

Do you need this right away, or can we wait for that change to proceed?

Oct 26 2017, 7:23 AM

Oct 25 2017

yuyichao created D39319: Set contract flag when setting unsafe algebra flag.
Oct 25 2017, 10:05 PM
yuyichao updated the diff for D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

Thanks for the review. Test removed and patch updated. I'll merge some time tomorrow.

Oct 25 2017, 8:10 AM

Oct 24 2017

yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

Who should make the decision of whether the test should be included or if it's needed? Or how much longer do I still need to wait before merging either with or without the test?

Oct 24 2017, 9:27 AM

Oct 22 2017

yuyichao committed rL316302: Fix invalid ptrtoint in InstCombine.
Fix invalid ptrtoint in InstCombine
Oct 22 2017, 1:31 PM
yuyichao closed D34335: Fix invalid ptrtoint in InstCombine by committing rL316302: Fix invalid ptrtoint in InstCombine.
Oct 22 2017, 1:31 PM
yuyichao added a comment to D34335: Fix invalid ptrtoint in InstCombine.

Thanks for the review.

Oct 22 2017, 1:31 PM

Oct 20 2017

yuyichao added a comment to D34335: Fix invalid ptrtoint in InstCombine.

Ping.

Oct 20 2017, 6:08 AM

Oct 17 2017

yuyichao committed rL315991: Fix implicit null check with negative offset.
Fix implicit null check with negative offset
Oct 17 2017, 4:47 AM
yuyichao closed D38925: Fix implicit null check with negative offset by committing rL315991: Fix implicit null check with negative offset.
Oct 17 2017, 4:47 AM
yuyichao committed rL315990: Fix `FaultMaps` crash when the out streamer is reused.
Fix `FaultMaps` crash when the out streamer is reused
Oct 17 2017, 4:44 AM
yuyichao closed D38924: Fix `FaultMaps` crash when the out streamer is reused by committing rL315990: Fix `FaultMaps` crash when the out streamer is reused.
Oct 17 2017, 4:44 AM

Oct 16 2017

yuyichao added a comment to D38925: Fix implicit null check with negative offset.

Thanks for review.

Oct 16 2017, 6:55 AM
yuyichao added a comment to D38924: Fix `FaultMaps` crash when the out streamer is reused.

But the point that SM does not do that makes me thinking that it might be a separate patch.

Oct 16 2017, 6:53 AM
yuyichao added a comment to D34335: Fix invalid ptrtoint in InstCombine.

Ping.

Oct 16 2017, 6:48 AM

Oct 14 2017

yuyichao added a comment to D38924: Fix `FaultMaps` crash when the out streamer is reused.

Thanks for the review.

Oct 14 2017, 5:39 PM
yuyichao added inline comments to D38924: Fix `FaultMaps` crash when the out streamer is reused.
Oct 14 2017, 4:57 PM
yuyichao created D38925: Fix implicit null check with negative offset.
Oct 14 2017, 4:27 PM
yuyichao created D38924: Fix `FaultMaps` crash when the out streamer is reused.
Oct 14 2017, 2:41 PM
yuyichao updated the diff for D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

I'm hoping for input from a code owner to see whether they think introducing a UnitTest is worth it.

Oct 14 2017, 2:30 PM

Oct 12 2017

yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

Personally I would be happy with the change without a heavyweight test.

Oct 12 2017, 2:00 PM

Oct 11 2017

yuyichao updated the diff for D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

I put together a really simple test based on the only other occurance of streamer in the tests (from DWARF tests). It reliably crashes without the patch and doesn't with the patch. This is about as much as what I can possibly come up with. A similar test can be added for AArch64 but won't be testing anything. I have no idea what result I should test.

Oct 11 2017, 8:10 PM

Oct 9 2017

yuyichao updated the diff for D34335: Fix invalid ptrtoint in InstCombine.

I've found another failure in instcombine (see last test) so it seems to me that CastInst::isBitOrNoopPointerCastable is the right place for this logic. This also answers my second question since the cast between address spaces is already handled by isBitCastable

Oct 9 2017, 7:38 PM

Oct 5 2017

yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

we might want at least an assert here.

Oct 5 2017, 11:45 AM
yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

My guess is that the only way to plausibly test this may be to add a new unittest maybe under unittest/MC?

Oct 5 2017, 11:43 AM
yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

One thing I'm a bit puzzled about in D30724 is that line 467 (in review) looks like it will move a LastEMSInfo unique_ptr<ElfMappingSymbolInfo> that points to nullptr on first call as the class member on line 686 isn't initialized. This may or may not be important and I may have missed something in the code.

Oct 5 2017, 11:29 AM
yuyichao added a comment to D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.

Why do you need to call this here and in reset()?

Oct 5 2017, 9:10 AM
yuyichao created D38588: Clear LastMappingSymbols and LastEMS(Info) when resetting the ARM(AArch64)ELFStreamer.
Oct 5 2017, 8:27 AM

Sep 27 2017

yuyichao updated the diff for D34335: Fix invalid ptrtoint in InstCombine.

There was no comment since the only comment I can add would be repeating the condition itself. I do like to add comment about why this is needed or if this is the only way we can fix the issue but that's also what I'm not sure about (quesiton 1 in my review comment). Anyway, I added a comment to repeat the condition for now.

Sep 27 2017, 7:22 AM

Sep 26 2017

yuyichao added a comment to D34335: Fix invalid ptrtoint in InstCombine.

Ping?

Sep 26 2017, 8:20 PM

Jul 29 2017

yuyichao updated the diff for D34335: Fix invalid ptrtoint in InstCombine.

Use AccessTy and added a test to make sure that the case where we load from an non-integral point is still optimized.

Jul 29 2017, 2:47 PM
yuyichao updated the diff for D34335: Fix invalid ptrtoint in InstCombine.
Jul 29 2017, 2:43 PM

Jun 21 2017

yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

I see the non-arch specific property as the good part since currently everything other than PPC claims to support large model with PIC and just generate wrong code. If a fallback that's always implementable and correct is defined, the only arch-specific changes needed will be for efficiency and not for correctness.

Jun 21 2017, 8:12 AM
yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

If the jump table is writable

Jun 21 2017, 5:10 AM

Jun 20 2017

yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

Why would a writable jump table help?

Jun 20 2017, 4:17 PM
yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

Who is we? I'm moderately sure that is not the case in general, since it would create less efficient code.

Jun 20 2017, 4:16 PM
yuyichao updated the diff for D34409: Use 64bit jump table with large code model on 64bit.

PPC changes reverted and tests updated. I believe this addresses all the comment so far.

Jun 20 2017, 4:03 PM
yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

the existing 32-bit offsets are probably fine.

Jun 20 2017, 3:54 PM
yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

It puts offsets between the BB and a picbase into the jumptable.

Jun 20 2017, 2:27 PM
yuyichao added a comment to D34409: Use 64bit jump table with large code model on 64bit.

I expect something better could be done for PPC, but this is entirely in line with the existing 32-bit code and correctness comes before performance. I pretty strongly object to characterising the patch as "wrong".

Jun 20 2017, 2:20 PM
yuyichao created D34409: Use 64bit jump table with large code model on 64bit.
Jun 20 2017, 9:45 AM

Jun 18 2017

yuyichao created D34335: Fix invalid ptrtoint in InstCombine.
Jun 18 2017, 3:09 PM

Jun 17 2017

yuyichao added a comment to D33110: [CodeGenPrepare] Don't create inttoptr for ni ptrs.

I'm seeing a similar failure caused by the same code even with this patch applied on LLVM 4.0.

Jun 17 2017, 3:12 PM

Jun 15 2017

yuyichao added a comment to D34078: Enable support for floating-point division reductions.

Ping?

Jun 15 2017, 11:36 AM

Jun 10 2017

yuyichao added a comment to D34078: Enable support for floating-point division reductions.

Oh and this fixes https://bugs.llvm.org/show_bug.cgi?id=33345

Jun 10 2017, 5:55 AM
yuyichao created D34078: Enable support for floating-point division reductions.
Jun 10 2017, 5:52 AM

Jan 26 2017

yuyichao committed rL293230: CMake is funky on detecting Intel 17 as GCC compatible..
CMake is funky on detecting Intel 17 as GCC compatible.
Jan 26 2017, 4:01 PM
yuyichao closed D27610: CMake is funky on detecting Intel 17 as GCC compatible. by committing rL293230: CMake is funky on detecting Intel 17 as GCC compatible..
Jan 26 2017, 4:01 PM

Jan 10 2017

yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

I would expect an IR test for this,

Jan 10 2017, 3:49 PM
yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

Except you don't?

Jan 10 2017, 3:14 PM
yuyichao added inline comments to D28122: RuntimeDyldELF: implement R_AARCH64_PREL64 reloc.
Jan 10 2017, 2:44 PM
yuyichao updated the diff for D27629: Fix unwind info relocation with large code model on AArch64.

Rebased to only include the code model part....... Hopefully this time someone can comment on the whole PR instead of half at a time ;-p........

Jan 10 2017, 2:37 PM
yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

...... Looks like the relocation part was implemented in a later pull request https://reviews.llvm.org/D28122 that's already committed.........................

Jan 10 2017, 2:33 PM

Jan 5 2017

yuyichao added reviewers for D27629: Fix unwind info relocation with large code model on AArch64: reames, ributzka, echristo, joerg.
Jan 5 2017, 6:29 PM
yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

(i.e. can both llvm and gnu libunwind handle DW_EH_PE_sdata8)

Jan 5 2017, 6:28 PM

Dec 24 2016

yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

Sure.

Dec 24 2016, 1:40 PM
yuyichao added a comment to D27629: Fix unwind info relocation with large code model on AArch64.

Ping.

Dec 24 2016, 3:57 AM

Dec 15 2016

yuyichao updated the diff for D27629: Fix unwind info relocation with large code model on AArch64.

https://reviews.llvm.org/D27609 is accepted and committed. Rebased on top of it and then add tests for the BE binary similar to https://reviews.llvm.org/D27609 .

Dec 15 2016, 3:13 PM
yuyichao committed rL289880: Fix R_AARCH64_MOVW_UABS_G3 relocation.
Fix R_AARCH64_MOVW_UABS_G3 relocation
Dec 15 2016, 2:47 PM
yuyichao closed D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation by committing rL289880: Fix R_AARCH64_MOVW_UABS_G3 relocation.
Dec 15 2016, 2:47 PM

Dec 14 2016

yuyichao updated the diff for D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.

Tests added. Also discovered and had to fix two other bugs since the arch detection was wrong for aarch64_be ELF file....

Dec 14 2016, 7:54 PM
yuyichao added a comment to D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.

(and add the required tests please)

Dec 14 2016, 5:57 PM
yuyichao added inline comments to D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.
Dec 14 2016, 4:20 PM
yuyichao added inline comments to D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.
Dec 14 2016, 4:02 PM
yuyichao added a comment to D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.

Ping.

Dec 14 2016, 3:47 PM

Dec 13 2016

yuyichao updated the diff for D27629: Fix unwind info relocation with large code model on AArch64.

Use target endian for data relocation. This one actually depends on https://reviews.llvm.org/D27609 now....

Dec 13 2016, 6:25 AM
yuyichao updated the diff for D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.

Use target endian for data relocation.

Dec 13 2016, 6:23 AM
yuyichao added inline comments to D27629: Fix unwind info relocation with large code model on AArch64.
Dec 13 2016, 5:20 AM

Dec 11 2016

yuyichao added a comment to D27653: Make check for atomic alignment target dependent.

Ref https://gcc.gnu.org/ml/gcc/2016-11/txt6ZlA_JS27i.txt .

Dec 11 2016, 1:38 PM

Dec 9 2016

yuyichao updated the diff for D27629: Fix unwind info relocation with large code model on AArch64.

Test added.

Dec 9 2016, 1:54 PM
yuyichao retitled D27629: Fix unwind info relocation with large code model on AArch64 from to Fix unwind info relocation with large code model on AArch64.
Dec 9 2016, 1:09 PM
yuyichao added inline comments to D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.
Dec 9 2016, 3:59 AM
yuyichao retitled D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation from to Fix R_AARCH64_MOVW_UABS_G3 relocation.
Dec 9 2016, 3:59 AM
yuyichao updated the diff for D27609: Fix R_AARCH64_MOVW_UABS_G3 relocation.

Tests added and endianess issue fixed.

Dec 9 2016, 3:59 AM

Nov 23 2016

yuyichao committed rL287769: Fix doc of `llvm.bitreverse.iN`.
Fix doc of `llvm.bitreverse.iN`
Nov 23 2016, 8:35 AM
yuyichao closed D27047: Fix doc of `llvm.bitreverse.iN` by committing rL287769: Fix doc of `llvm.bitreverse.iN`.
Nov 23 2016, 8:35 AM
yuyichao retitled D27047: Fix doc of `llvm.bitreverse.iN` from to Fix doc of `llvm.bitreverse.iN`.
Nov 23 2016, 7:29 AM

Nov 17 2016

yuyichao committed rL287293: Add an option to disable libedit.
Add an option to disable libedit
Nov 17 2016, 5:35 PM
yuyichao closed D26550: Add an option to disable libedit by committing rL287293: Add an option to disable libedit.
Nov 17 2016, 5:35 PM

Nov 16 2016

yuyichao added a comment to D26550: Add an option to disable libedit.

Ping

Nov 16 2016, 8:43 AM

Nov 11 2016

yuyichao retitled D26550: Add an option to disable libedit from to Add an option to disable libedit.
Nov 11 2016, 8:25 AM

Nov 4 2016

yuyichao closed D26123: Fix SegFault in Expected.

I assume the patch is actually merged even though somehow it doesn't trigger the hook that closes this?

Nov 4 2016, 11:07 AM

Nov 2 2016

yuyichao added a comment to D26123: Fix SegFault in Expected.

Since this started causing problems after r285426, I'm wondering what the reproducer looks like / why we haven't seen this issue already.

Nov 2 2016, 11:18 AM

Nov 1 2016

yuyichao added a comment to D26123: Fix SegFault in Expected.

@lhames ping.

Nov 1 2016, 5:21 PM

Oct 29 2016

yuyichao added a comment to D26123: Fix SegFault in Expected.

And I think it didn't cause any problem because Error and unique_ptr has the same layout except for the lowest bit. Before https://reviews.llvm.org/rL285426, the lowest bit should never be set when the Expected is checked/assertion is disabled but this is not true anymore for an unchecked Expected on a release build after the change.

Oct 29 2016, 5:12 PM
yuyichao retitled D26123: Fix SegFault in Expected from to Fix SegFault in Expected.
Oct 29 2016, 5:06 PM

Oct 15 2016

yuyichao added a comment to D25069: Fix PREL31 relocation on ARM.

Ping. Does this still need more review or is this OK to merge? I'll also need someone else to push for me since I don't have commit access.

Oct 15 2016, 6:50 AM

Oct 9 2016

yuyichao updated the diff for D25069: Fix PREL31 relocation on ARM.

Add test.

Oct 9 2016, 7:36 PM

Oct 1 2016

yuyichao updated the diff for D25069: Fix PREL31 relocation on ARM.

Fix bit31 mask....

Oct 1 2016, 4:05 PM
yuyichao added inline comments to D25069: Fix PREL31 relocation on ARM.
Oct 1 2016, 3:54 PM

Sep 30 2016

yuyichao added a comment to D25069: Fix PREL31 relocation on ARM.

Your solution is the same way that R_ARM_PREL31 is handled in lld, so this looks fine from a correctness point of view.

Sep 30 2016, 12:57 PM

Sep 29 2016

yuyichao updated the diff for D25069: Fix PREL31 relocation on ARM.
Sep 29 2016, 10:00 PM
yuyichao retitled D25069: Fix PREL31 relocation on ARM from to Fix PREL31 relocation on ARM.
Sep 29 2016, 9:58 PM