@@ -420,43 +420,43 @@ class AtomArrayAllocateStrategy : public ArrayAllocateStrategy
420
420
: ArrayAllocateStrategy(apply)
421
421
{}
422
422
423
- virtual bool passInitValueToAllocateCall () const
423
+ bool passInitValueToAllocateCall () const override
424
424
{
425
425
return false ;
426
426
}
427
427
428
- virtual String allocateFuncName () const
428
+ String allocateFuncName () const override
429
429
{
430
430
return String (" h7_allocate_array" );
431
431
}
432
432
433
- virtual std::vector<llvm::Type*> allocateFuncSignature () const
433
+ std::vector<llvm::Type*> allocateFuncSignature () const override
434
434
{
435
435
return std::vector<llvm::Type*>{
436
436
fApply ->types ().getAtomType ()->getPointerTo (),
437
437
fApply ->types ().getTypeType (),
438
438
fApply ->types ().getSizeTTy () };
439
439
}
440
440
441
- virtual llvm::Value* initValue (const ApplyNode* node) const
441
+ llvm::Value* initValue (const ApplyNode* node) const override
442
442
{
443
443
const NodeList& args = node->children ();
444
444
return fApply ->emitAllocateApplyImpl (args[0 ].get ());
445
445
}
446
446
447
- virtual llvm::Value* typeTagArgument (const ApplyNode* node) const
447
+ llvm::Value* typeTagArgument (const ApplyNode* node) const override
448
448
{
449
449
const NodeList& args = node->children ();
450
450
llvm::Value* val = fApply ->emitTypeNameForAllocate (args[0 ].get ());
451
451
hr_assert (val);
452
452
return val;
453
453
}
454
454
455
- virtual llvm::Value* postInit (const ApplyNode* node,
456
- llvm::Value* retv,
457
- const Type& arrayBaseType,
458
- llvm::Value* sizeVal,
459
- llvm::Value* explicitInitValue) const
455
+ llvm::Value* postInit (const ApplyNode* node,
456
+ llvm::Value* retv,
457
+ const Type& arrayBaseType,
458
+ llvm::Value* sizeVal,
459
+ llvm::Value* explicitInitValue) const override
460
460
{
461
461
llvm::Function *curFunction = fApply ->builder ().GetInsertBlock ()->getParent ();
462
462
llvm::AllocaInst* counter = fApply ->tools ().createEntryBlockAlloca (
@@ -532,17 +532,17 @@ class Int32ArrayAllocateStrategy : public ArrayAllocateStrategy
532
532
: ArrayAllocateStrategy(apply)
533
533
{}
534
534
535
- virtual bool passInitValueToAllocateCall () const
535
+ bool passInitValueToAllocateCall () const override
536
536
{
537
537
return true ;
538
538
}
539
539
540
- virtual String allocateFuncName () const
540
+ String allocateFuncName () const override
541
541
{
542
542
return String (" h7_allocate_int32_array" );
543
543
}
544
544
545
- virtual std::vector<llvm::Type*> allocateFuncSignature () const
545
+ std::vector<llvm::Type*> allocateFuncSignature () const override
546
546
{
547
547
return std::vector<llvm::Type*>{
548
548
fApply ->types ().getAtomType ()->getPointerTo (),
@@ -551,21 +551,21 @@ class Int32ArrayAllocateStrategy : public ArrayAllocateStrategy
551
551
fApply ->types ().getSizeTTy () };
552
552
}
553
553
554
- virtual llvm::Value* initValue (const ApplyNode* node) const
554
+ llvm::Value* initValue (const ApplyNode* node) const override
555
555
{
556
556
return llvm::Constant::getNullValue (llvm::Type::getInt32Ty (fApply ->context ()));
557
557
}
558
558
559
- virtual llvm::Value* typeTagArgument (const ApplyNode* node) const
559
+ llvm::Value* typeTagArgument (const ApplyNode* node) const override
560
560
{
561
561
return fApply ->tools ().emitTypeId (CodegenTools::kAtomInt32Array );
562
562
}
563
563
564
- virtual llvm::Value* postInit (const ApplyNode* node,
565
- llvm::Value* retv,
566
- const Type& arrayBaseType,
567
- llvm::Value* sizeVal,
568
- llvm::Value* explicitInitValue) const
564
+ llvm::Value* postInit (const ApplyNode* node,
565
+ llvm::Value* retv,
566
+ const Type& arrayBaseType,
567
+ llvm::Value* sizeVal,
568
+ llvm::Value* explicitInitValue) const override
569
569
{
570
570
return retv;
571
571
}
@@ -579,39 +579,39 @@ class CharArrayAllocateStrategy : public ArrayAllocateStrategy
579
579
: ArrayAllocateStrategy(apply)
580
580
{}
581
581
582
- virtual bool passInitValueToAllocateCall () const
582
+ bool passInitValueToAllocateCall () const override
583
583
{
584
584
return true ;
585
585
}
586
586
587
- virtual String allocateFuncName () const
587
+ String allocateFuncName () const override
588
588
{
589
589
return String (" allocate_char_array" );
590
590
}
591
591
592
- virtual std::vector<llvm::Type*> allocateFuncSignature () const
592
+ std::vector<llvm::Type*> allocateFuncSignature () const override
593
593
{
594
594
return std::vector<llvm::Type*>{ fApply ->types ().getAtomType ()->getPointerTo (),
595
595
fApply ->types ().getTagIdType (),
596
596
llvm::Type::getInt32Ty (fApply ->context ()),
597
597
fApply ->types ().getSizeTTy () };
598
598
}
599
599
600
- virtual llvm::Value* initValue (const ApplyNode* node) const
600
+ llvm::Value* initValue (const ApplyNode* node) const override
601
601
{
602
602
return llvm::Constant::getNullValue (llvm::Type::getInt32Ty (fApply ->context ()));
603
603
}
604
604
605
- virtual llvm::Value* typeTagArgument (const ApplyNode* node) const
605
+ llvm::Value* typeTagArgument (const ApplyNode* node) const override
606
606
{
607
607
return fApply ->tools ().emitTypeId (CodegenTools::kAtomCharArray );
608
608
}
609
609
610
- virtual llvm::Value* postInit (const ApplyNode* node,
611
- llvm::Value* retv,
612
- const Type& arrayBaseType,
613
- llvm::Value* sizeVal,
614
- llvm::Value* explicitInitValue) const
610
+ llvm::Value* postInit (const ApplyNode* node,
611
+ llvm::Value* retv,
612
+ const Type& arrayBaseType,
613
+ llvm::Value* sizeVal,
614
+ llvm::Value* explicitInitValue) const override
615
615
{
616
616
return retv;
617
617
}
0 commit comments