HomePhabricator

[IR] Redefine Freeze instruction

Authored by aqjune on Nov 6 2019, 8:17 AM.

Description

[IR] Redefine Freeze instruction

Summary:
This patch redefines freeze instruction from being UnaryOperator to a subclass of UnaryInstruction.

ConstantExpr freeze is removed, as discussed in the previous review.
FreezeOperator is not added because there's no ConstantExpr freeze.
freeze i8* null test is added to test/Bindings/llvm-c/freeze.ll as well, because the null pointer-related bug in tools/llvm-c/echo.cpp is now fixed.
InstVisitor has visitFreeze now because freeze is not unaryop anymore.

Reviewers: whitequark, deadalnix, craig.topper, jdoerfert, lebedev.ri

Reviewed By: craig.topper, lebedev.ri

Subscribers: regehr, nlopes, mehdi_amini, hiraditya, steven_wu, dexonsmith, jfb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D69932

Details

Committed
aqjuneNov 11 2019, 5:49 PM
Reviewer
craig.topper
Differential Revision
D69932: [IR] Redefine Freeze instruction
Parents
rGc46b3a2abd38: clang/Modules: Clean up modules on error in ReadAST
Branches
Unknown
Tags
Unknown