1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 03:52:19 +02:00

Fixed crash related to global var alignment

This commit is contained in:
Brian Fiete 2020-04-03 12:32:42 -07:00
parent 2c6a72ba68
commit aaccaa97e2
5 changed files with 40 additions and 10 deletions

View file

@ -1658,6 +1658,9 @@ void BeIRCodeGen::HandleNextCmd()
{
CMD_PARAM(BeValue*, val);
CMD_PARAM(bool, unnamedAddr);
BF_ASSERT(BeValueDynCast<BeGlobalVariable>(val) != NULL);
((BeGlobalVariable*)val)->mUnnamedAddr = true;
}
break;
@ -1665,6 +1668,8 @@ void BeIRCodeGen::HandleNextCmd()
{
CMD_PARAM(BeValue*, val);
CMD_PARAM(BeConstant*, initializer);
BF_ASSERT(BeValueDynCast<BeGlobalVariable>(val) != NULL);
auto globalVariable = (BeGlobalVariable*)val;
globalVariable->mInitializer = initializer;
@ -1681,6 +1686,8 @@ void BeIRCodeGen::HandleNextCmd()
CMD_PARAM(BeValue*, val);
CMD_PARAM(int, alignment);
BF_ASSERT(BeValueDynCast<BeGlobalVariable>(val) != NULL);
auto globalVariable = (BeGlobalVariable*)val;
globalVariable->mAlign = alignment;
BF_ASSERT(alignment > 0);