Page MenuHomePhabricator

OikawaKirie (Ella Ma)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 22 2020, 11:10 PM (42 w, 4 h)

Recent Activity

Wed, Mar 31

OikawaKirie added a comment to D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

BTW, I was obstructed by the z3 requirement in the regression test case when I tried to understand your test case. Even though I set the variables LLVM_Z3_INSTALL_DIR and LLVM_ENABLE_Z3_SOLVER during CMake, and the CSA can be correctly compiled with Z3, I still cannot make the test case run during make check-all. Therefore, this case was manually executed with llvm-lit -DUSE_Z3_SOLVER=1. Could you please tell me how to enable Z3 during llvm-lit.

I am a bit unhappy that we cannot run the test automatically, but maybe in the future.
@steakhal, https://reviews.llvm.org/D83677 seems to be related, should we push that?

Wed, Mar 31, 8:55 AM · Restricted Project

Sat, Mar 27

OikawaKirie updated the diff for D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

I'm somewhat bothered that this patch is not landed yet. :|

I made a crude mock to trigger the bug using LD_PRELOAD.


The test reproduces the issue and passes if you apply the fix from this patch.

However, it requires compiling a shared object with the same compiler you used for building clang. I'm using the c++ compiler, for now.
I think it's a good starting point.

Sat, Mar 27, 11:10 PM · Restricted Project

Fri, Mar 19

OikawaKirie added a comment to D98918: [clang][lit] Allow test cases to use the compiler that are used to compile Clang.
Fri, Mar 19, 2:07 AM · Restricted Project

Thu, Mar 18

OikawaKirie requested review of D98918: [clang][lit] Allow test cases to use the compiler that are used to compile Clang.
Thu, Mar 18, 8:33 PM · Restricted Project

Wed, Mar 17

OikawaKirie added a comment to D97265: [clang] Allow clang-check to customize analyzer output file or dir name.

@sammccall ping.

Wed, Mar 17, 11:57 PM · Restricted Project

Mar 12 2021

OikawaKirie added a comment to D98407: [clang-query] Add syntax highlight for clang-query scripts..

Matchers change over time, so it may be wise to create a script to parse clang/lib/ASTMatchers/Dynamic/Registry.cpp and extract the matcher definitions from there. Save manually updating of this.

Mar 12 2021, 2:09 AM · Restricted Project, Restricted Project

Mar 11 2021

OikawaKirie added a comment to D98407: [clang-query] Add syntax highlight for clang-query scripts..

Matchers change over time, so it may be wise to create a script to parse clang/lib/ASTMatchers/Dynamic/Registry.cpp and extract the matcher definitions from there. Save manually updating of this.

Mar 11 2021, 4:06 AM · Restricted Project, Restricted Project
OikawaKirie requested review of D98407: [clang-query] Add syntax highlight for clang-query scripts..
Mar 11 2021, 3:34 AM · Restricted Project, Restricted Project

Mar 7 2021

OikawaKirie updated the diff for D97265: [clang] Allow clang-check to customize analyzer output file or dir name.

Replace concatenating the output from clang-check and plist with separated checks to workaround the test failure on Windows.

Mar 7 2021, 8:37 PM · Restricted Project

Mar 4 2021

OikawaKirie updated the diff for D97265: [clang] Allow clang-check to customize analyzer output file or dir name.
  1. Update option name from -output to -analyzer-output-path. As it can either be a file name or a directory name, the word path may not be accurate. Please give me your suggestions on this option name.
  2. Add more verifications on the output files, rather than verifying the value of the -o option. For simplicity, the regression test case only checks the plist format.
Mar 4 2021, 11:04 PM · Restricted Project

Feb 23 2021

OikawaKirie added a comment to D97265: [clang] Allow clang-check to customize analyzer output file or dir name.
Feb 23 2021, 11:19 PM · Restricted Project
OikawaKirie requested review of D97251: [llvm] Add assertions for the smart pointers with the possibility to be null in ClangAttrEmitter.

My only concern is the recursive call to this function on line 1359. If you think it is also OK for the recursive call on line 1359, I will update the patch as you mentioned above.

Feb 23 2021, 8:45 PM · Restricted Project
OikawaKirie added a comment to D97185: [llvm] Add assertions for the smart pointers with the possibility to be null in DWARFLinker::loadClangModule.

If the revision is done, please commit it on my behalf. Thank you.

Feb 23 2021, 8:06 PM · Restricted Project
OikawaKirie added a comment to D97258: [llvm] Add assertions for the smart pointers with the possibility to be null in ModuleLazyLoaderCache::operator().

If the revision is done, please commit it on my behalf. Thank you.

Feb 23 2021, 8:05 PM · Restricted Project
OikawaKirie requested review of D97265: [clang] Allow clang-check to customize analyzer output file or dir name.
Feb 23 2021, 1:45 AM · Restricted Project

Feb 22 2021

OikawaKirie abandoned D91844: [llvm][clang] Add checks for the smart pointers with the possibility to be null.

Split to

  • D97251 (clang/utils/TableGen/ClangAttrEmitter.cpp)
  • D97185 (llvm/lib/DWARFLinker/DWARFLinker.cpp)
  • D97254 (llvm/lib/LTO/ThinLTOCodeGenerator.cpp)
  • D97255 (llvm/lib/Support/VirtualFileSystem.cpp)
  • D97258 (llvm/tools/llvm-link/llvm-link.cpp)
Feb 22 2021, 10:46 PM · Restricted Project, Restricted Project
OikawaKirie requested review of D97258: [llvm] Add assertions for the smart pointers with the possibility to be null in ModuleLazyLoaderCache::operator().
Feb 22 2021, 10:37 PM · Restricted Project
OikawaKirie requested review of D97255: [clang] Add assertions for the smart pointers with the possibility to be null in InMemoryFileSystem::addFile.
Feb 22 2021, 10:09 PM · Restricted Project, Restricted Project
OikawaKirie requested review of D97254: [llvm] Add assertions for the smart pointers with the possibility to be null returned from ThinLTOCodeGenerator::linkCombinedIndex.
Feb 22 2021, 9:57 PM · Restricted Project
OikawaKirie added a comment to D97251: [llvm] Add assertions for the smart pointers with the possibility to be null in ClangAttrEmitter.

As a recursive function it is, the original patch in D91844 was adding assertions where the function is called other places in the file.

Feb 22 2021, 9:16 PM · Restricted Project
OikawaKirie requested review of D97251: [llvm] Add assertions for the smart pointers with the possibility to be null in ClangAttrEmitter.
Feb 22 2021, 9:07 PM · Restricted Project
OikawaKirie requested review of D97185: [llvm] Add assertions for the smart pointers with the possibility to be null in DWARFLinker::loadClangModule.
Feb 22 2021, 12:52 AM · Restricted Project

Jan 4 2021

OikawaKirie added a comment to D92634: [Analyzer] Diagnose signed integer overflow.

However, the mainstream compilers like GCC and Clang implement this as the overflowed value, and some programmers also use this feature to do some tricky things.

hmm.. you mean if some -fwrapv flag is used right. yes I should disable this checking then.

For information, I am not very worried about signed integer overflow. I am mostly worried about the compiler optimisations. If the compiler determines that there is signed integer overflow in a execution path and removes all code in that path.

I was inspired by this blog post: https://www.airs.com/blog/archives/120

This function:

int f(int x) { return 0x7ffffff0 < x && x + 32 < 0x7fffffff; }

might be optimized to:

int f(int x) { return 0; }
Jan 4 2021, 7:58 PM · Restricted Project

Jan 3 2021

OikawaKirie added a comment to D92634: [Analyzer] Diagnose signed integer overflow.

Besides, the return value should be the exact value computed from the two integers, even unknown, rather than undefined. As the developers may overflow an integer on purpose.

I am not sure what you mean. If there is undefined behavior then the value should be undefined and nothing else.. right?

Jan 3 2021, 7:59 PM · Restricted Project

Dec 14 2020

OikawaKirie added a comment to D92634: [Analyzer] Diagnose signed integer overflow.

I think it could be better to implement this check with a checker on PreStmt<BinaryOperator> and so on. And IMO, checkers have enough functionalities to report these problems.

Dec 14 2020, 8:40 PM · Restricted Project
OikawaKirie added a comment to D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.

Replies from the original author Hao Zhang <zhanghao19@ios.ac.cn>

Dec 14 2020, 8:24 PM · Restricted Project

Dec 10 2020

OikawaKirie added a comment to D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.

Replies from the original author Hao Zhang <zhanghao19@ios.ac.cn>

Dec 10 2020, 10:12 PM · Restricted Project

Dec 9 2020

OikawaKirie updated the summary of D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.
Dec 9 2020, 10:56 PM · Restricted Project
OikawaKirie added a comment to D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.

Replies from the original author Hao Zhang <zhanghao19@ios.ac.cn>
(Sorry for the wrong email address in the previous reply.)

Dec 9 2020, 10:55 PM · Restricted Project
OikawaKirie added a comment to D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.
Dec 9 2020, 7:02 PM · Restricted Project

Dec 4 2020

OikawaKirie added a comment to D92639: [analyzer] Add control flow arrows to the analyzer's HTML reports.

It is really a good idea!

Dec 4 2020, 1:48 AM · Restricted Project

Nov 26 2020

OikawaKirie requested review of D92160: [clang] Fix wrong FDs are used for files with same name in Tooling.
Nov 26 2020, 2:12 AM · Restricted Project

Nov 23 2020

OikawaKirie added a comment to D91960: [llvm][unittests] Fix protential nullptr dereferences due to unchecked return value or EXPECT_* macro.

Some of my fixes still need to be improved (see the comments in the code). If any reviewers have better ideas, I will update the patch.

Nov 23 2020, 5:15 AM · Restricted Project
OikawaKirie requested review of D91960: [llvm][unittests] Fix protential nullptr dereferences due to unchecked return value or EXPECT_* macro.
Nov 23 2020, 5:04 AM · Restricted Project

Nov 22 2020

OikawaKirie added a comment to D91844: [llvm][clang] Add checks for the smart pointers with the possibility to be null.

Is it possible to split these up into separate patches for unrelated code?

Nov 22 2020, 7:11 PM · Restricted Project, Restricted Project

Nov 19 2020

OikawaKirie requested review of D91844: [llvm][clang] Add checks for the smart pointers with the possibility to be null.
Nov 19 2020, 11:35 PM · Restricted Project, Restricted Project
OikawaKirie updated the diff for D91410: [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref.
  1. Replace fatal errors with assertions.
Nov 19 2020, 8:08 PM · Restricted Project, Restricted Project, Restricted Project

Nov 17 2020

OikawaKirie added a comment to D91410: [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref.
Nov 17 2020, 10:32 PM · Restricted Project, Restricted Project, Restricted Project

Nov 16 2020

OikawaKirie requested review of D91540: [preprocessor] Assertions on the inferrable null pointers in Preprocessor befere dereference.
Nov 16 2020, 6:36 AM · Restricted Project

Nov 13 2020

OikawaKirie requested review of D91410: [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref.
Nov 13 2020, 3:32 AM · Restricted Project, Restricted Project, Restricted Project

Oct 22 2020

OikawaKirie added a comment to D89987: [analyzer] [NFC] Rename SymbolRef to SymExprRef.

Since SymbolRef is just a const SymExpr * in the current codebase, I'd prefer using const SymExpr * directly, just like how MemRegion is used, which would be clearer than both SymbolRef and SymExprRef as far as I am thinking.

Oct 22 2020, 8:09 PM · Restricted Project

Oct 15 2020

OikawaKirie abandoned D88198: Hints CMake where to find Z3 with LLVM_Z3_INSTALL_DIR..

Yes, it's being used in the FindZ3.cmaks script.

Oct 15 2020, 7:30 PM · Restricted Project
OikawaKirie added a comment to D88198: Hints CMake where to find Z3 with LLVM_Z3_INSTALL_DIR..

I have another try in a newly installed system without Z3 installed from the distribute software source, and the following tests are carried out in /tmp/ella.z3-patch.

Oct 15 2020, 4:25 AM · Restricted Project

Oct 11 2020

OikawaKirie added a comment to D88198: Hints CMake where to find Z3 with LLVM_Z3_INSTALL_DIR..

@mikhail.ramalho ping

Oct 11 2020, 7:26 PM · Restricted Project

Sep 23 2020

OikawaKirie requested review of D88198: Hints CMake where to find Z3 with LLVM_Z3_INSTALL_DIR..
Sep 23 2020, 8:49 PM · Restricted Project

Sep 9 2020

OikawaKirie added a comment to D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

After reviewing the code of this snippet, I think it would be very difficult to make a regression test case for the crash, as far as what I know about Z3 and SMT solvers.

Sep 9 2020, 11:11 PM · Restricted Project

Sep 8 2020

OikawaKirie added a comment to D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

We have tried to trigger the crash with the original project where the crash was encountered. But the problem is we cannot trigger the crash with the project, and we have lost all the previous records about this crash. Besides, both I and the bug reporter himself are now working on our own research right now. We have very limited time working on this patch in recent months. We are now planning to just make a simple regression test case to trigger the crash during our spire time. Sorry for the delay.

Sep 8 2020, 8:55 PM · Restricted Project

Aug 23 2020

OikawaKirie added a comment to D85105: [doxygen] Fix bad doxygen results for BugReporterVisitors.h.

@vsavchenko @NoQ
The patch has been updated as required. Is there anything I need to do with the patch?

Aug 23 2020, 8:07 PM · Restricted Project

Aug 12 2020

OikawaKirie updated the diff for D85105: [doxygen] Fix bad doxygen results for BugReporterVisitors.h.

Ok, I got it. I will pay attention to this in the future submits.

Aug 12 2020, 12:35 AM · Restricted Project

Aug 11 2020

OikawaKirie updated the diff for D85105: [doxygen] Fix bad doxygen results for BugReporterVisitors.h.

Now it has a link to the getEndPath.

Aug 11 2020, 7:22 PM · Restricted Project

Aug 2 2020

OikawaKirie requested review of D85105: [doxygen] Fix bad doxygen results for BugReporterVisitors.h.
Aug 2 2020, 10:05 PM · Restricted Project

Jul 14 2020

OikawaKirie added a comment to D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

Might in the future I would spend some time on it - we will see.

@steakhal My boss always asks me about how to improve the performance for SMT solver based constraint solving, on both the engine side and the SMT solver side. If there is anything that our research group can do, you are free to contact us.

BTW nice catch & fix.

Thank you. This crash was discovered by one of our team members when we were testing our CSA based tool. If the patch gets merged in the future, I'd like to use his name and email for the commit.

Jul 14 2020, 1:09 AM · Restricted Project
OikawaKirie added a comment to D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..

do you accidentally have a test case to reproduce the crash

@NoQ I am now working with the reporter of this bug to make a simple test case to trigger the crash.

Jul 14 2020, 12:46 AM · Restricted Project

Jul 13 2020

OikawaKirie added a comment to D82356: Fix bad doxygen result for class clang::ento::CallEvent and its derived classes.

@vsavchenko Ella Ma <alansnape3058@gmail.com>. Thank you.

Jul 13 2020, 2:01 AM · Restricted Project
OikawaKirie created D83660: [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h..
Jul 13 2020, 12:52 AM · Restricted Project
OikawaKirie added a comment to D82356: Fix bad doxygen result for class clang::ento::CallEvent and its derived classes.

@vsavchenko @dcoughlin @NoQ
I do not know whether it is correct to ping somebody like this. As this is my first submitted review, I do not know what should I do next, when the patch has been accepted by one of the reviewers while others have not given any comments. Should I continue waiting for other reviewers? And what should I do with the bug report (https://bugs.llvm.org/show_bug.cgi?id=44753)?
Thank you.

Jul 13 2020, 12:28 AM · Restricted Project

Jun 23 2020

OikawaKirie created D82356: Fix bad doxygen result for class clang::ento::CallEvent and its derived classes.
Jun 23 2020, 1:00 AM · Restricted Project